Bug #19951
closedupdating host can cause large values to get passed via dynflow envelope, slowing task processing
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1458857
Description of problem:
The fix for https://bugzilla.redhat.com/show_bug.cgi?id=1405085 passes system facts from 'plan' phase to 'run' phase on the update task. This causes dynflow to take extra time to serialize and deserialize the task envelope, which can cause dynflow to not keep up with incoming tasks on a busy system.
Version-Release number of selected component (if applicable): 6.2.9
How reproducible: difficult to repro without a busy Satellite
Steps to Reproduce:
1. create lots of host update tasks (perhaps 1 per sec)
2. let the task list get to about 5000+ tasks; it may help to kick off some syncs to load up dynflow
3. view task list periodically
Actual results: task list grows and does not clear out
Expected results: dynflow can keep up, tasks clear out
Additional info: reverting 5dca166c84d did the trick, except some existing tasks were still looking for the 'run' method on Katello::Host::Update instead of inheriting from the superclass. Note though that reverting brought back 1405085.
We may want to gzip the fact list or only pass in updated facts instead of the full list.
Updated by Shimon Shtein over 7 years ago
- Related to Refactor #20024: Improve performance of rhsm fact importer added
Updated by Ivan Necas over 7 years ago
Closing in favor of #20024, as the original assumption was not confirmed,