Project

Profile

Help

Issue #3888

Updated by ttereshc over 5 years ago

If there are many orphaned applicability profiles, and applicability regeneration is triggered for a repo with many consumers, it can produce a lot of no-op tasks which doesn't produce any value but just load the system. 

 The suggestion is to not schedule applicability tasks for orphaned applicability profiles. 
 Orphaned profiles: 
  - belong to a repo which doesn't exist (those are harmless, since applicability is scheduled for a specific repo_id which should exists) 
  - applicability profiles for orphaned consumer profiles (consumer profiles which no longer belong to any consumer) 
  - applicability profiles for existing consumer profiles which no longer belong to a repo for which applicability regeneration is triggered (*real-life example - 70K profiles for a repo, 0 bound consumers -> 7K useless tasks*). I'm also not sure if this type of orphaned tasks is cleaned up by "monthly maintenance task":https://github.com/pulp/pulp/blob/282647cbf7e470de34f03a1c7568ef6013e12405/server/pulp/server/async/celery_instance.py#L31. 

Back