DescriptionJustin Sherrill
2018-04-16 14:01:08 UTC
When there are a lot of hosts and a lot of rpms, this query can be slow:
SELECT COUNT(*) FROM "katello_rpms" INNER JOIN "katello_content_facet_applicable_rpms" ON "katello_rpms"."id" = "katello_content_facet_appl
icable_rpms"."rpm_id" WHERE "katello_content_facet_applicable_rpms"."content_facet_id" = $1 [["content_facet_id", 51438]]
it is generated by:
<pre>
def update_applicability_counts
self.update_attributes!(
:installable_security_errata_count => self.installable_errata.security.count,
:installable_bugfix_errata_count => self.installable_errata.bugfix.count,
:installable_enhancement_errata_count => self.installable_errata.enhancement.count,
:applicable_rpm_count => self.applicable_rpms.count,
:upgradable_rpm_count => self.installable_rpms.count
)
end
</pre>
To test this, just:
* sync some rhel repos
* attach some client that is not fully up to date (with katello-host-tools installed)
* Notice errata showing up for that clent
* yum update on the client
* errata should not show up any more
Registered 6000 hosts that had errata applicable.
Registered 1 more host that had ~400 errata applicable.
Ran yum update, installed ~500 RPMs and all errata. The UI showed 0 errata immediately after completion of the yum transaction on the client.
Moving to VERIFIED
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2018:1950
When there are a lot of hosts and a lot of rpms, this query can be slow: SELECT COUNT(*) FROM "katello_rpms" INNER JOIN "katello_content_facet_applicable_rpms" ON "katello_rpms"."id" = "katello_content_facet_appl icable_rpms"."rpm_id" WHERE "katello_content_facet_applicable_rpms"."content_facet_id" = $1 [["content_facet_id", 51438]] it is generated by: <pre> def update_applicability_counts self.update_attributes!( :installable_security_errata_count => self.installable_errata.security.count, :installable_bugfix_errata_count => self.installable_errata.bugfix.count, :installable_enhancement_errata_count => self.installable_errata.enhancement.count, :applicable_rpm_count => self.applicable_rpms.count, :upgradable_rpm_count => self.installable_rpms.count ) end </pre>