Issue #1462
closed
Errata Install to Content Host takes too long and doesn't scale well
Status:
CLOSED - CURRENTRELEASE
Description
We have a report that installing a number of erratta takes a long time. There is no info about what the bottleneck is, so we need to investigate.
From bugzilla:
When applying (installing) errata on a Content Host from the server, it takes a very long time.
For example, installing ~556 errata on a single content host was observed to take ~44 minutes. Most of that time (~36 minutes) was during the 'initiating the install' phase of the task (i.e. executing the pulp consumer content install). While this may not sound too bad a first glance, it won't scale well as the behavior is linear. As a result, if there were 100 content hosts, that same action could take ~3 days.
- Platform Release set to 2.8.0
- Triaged changed from No to Yes
- Priority changed from High to Normal
- Priority changed from Normal to High
- Platform Release changed from 2.8.0 to 2.8.1
- Status changed from NEW to ASSIGNED
- Assignee set to dkliban@redhat.com
- Platform Release changed from 2.8.1 to 2.8.2
- Sprint/Milestone set to 19
- Platform Release changed from 2.8.2 to 2.8.3
- Platform Release changed from 2.8.3 to 2.8.4
The problem stems from the fact that Pulp takes each errata and turns it into a list of packages. As the number of errata grows, the amount of time it takes to translate them into package lists grows.
The proper solution is to smarten up the Katello agent/pulpplugin for Gofer to be aware of errata as a content type. This way Pulp can completely avoid having to generate lists of packages. Yum is very good at figuring out what packages belong to what errata.
I have tested this solution with yum 3.4.3 on RHEL7.
I have also tested this with yum 3.2.22 and yum-security 1.1.16 on RHEL 5.10.
I have confirmed that Yum 3.2.22 ans yum-security 1.1.16 have shipped with RHEL 5 since update 5.
- Sprint/Milestone changed from 19 to 20
- Status changed from ASSIGNED to POST
- Status changed from POST to MODIFIED
- % Done changed from 0 to 100
- Status changed from MODIFIED to 5
- Platform Release changed from 2.8.4 to 2.8.5
- Status changed from 5 to MODIFIED
- Status changed from MODIFIED to 5
- Status changed from 5 to CLOSED - CURRENTRELEASE
- Sprint/Milestone deleted (
20)
Also available in: Atom
PDF
Improves performance of errata installation.
Pulp API no longer translates errata into a list of packages applicable to a consumer. Errata ids are passed to the agent on the consumer where yum and security plugin take care of the translation. The new functionality is equivalent to running
on the consumer.
closes #1462 https://pulp.plan.io/issues/1462