Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Customers often suffer from many fact names which can slower performance of whole instance. Please add new check:
hosts_count = select count(*) from host;
facts_count = select count(*) from fact_name;
if facts_count > 10_000 + hosts_count * 2
print warning "There are more fact names than estimated #{facts_count}, consider adding fact exclude filter."
end
This should give a reasonable warning threshold:
1k hosts = 12k fact names
10k hosts = 30k fact names
50k hosts = 110k fact names
Verified
Verified with:
- Satellite 6.8.0 snap 6
- rubygem-foreman_maintain-0.6.5-1.el7sat.noarch
Test steps:
- Run "foreman-maintain health check --label foreman-fact-names"
- Modified max fact value for testing purpose.
- Run "foreman-maintain health check --label foreman-fact-names"
Observation:
- Check detects whether hosts has fact values more than a certain number.(Currently 10000)
- It gives link to KCS article https://access.redhat.com/solutions/4163891
# foreman-maintain health check --label foreman-fact-names
Running ForemanMaintain::Scenario::FilteredScenario
================================================================================
Check number of fact names in database: [OK]
--------------------------------------------------------------------------------
# foreman-maintain health check --label foreman-fact-names
Running ForemanMaintain::Scenario::FilteredScenario
================================================================================
Check number of fact names in database: [WARNING]
Host (ID 1) has 405 fact values which is more than 100.
This can cause slow fact processing.
--------------------------------------------------------------------------------
Continue with step [Show knowledge base article for troubleshooting]?, [y(yes), n(no), q(quit)] y
Show knowledge base article for troubleshooting:
Go to https://access.redhat.com/solutions/4163891
please follow steps from above article to resolve this issue
press ENTER once done.
[OK]
--------------------------------------------------------------------------------
Rerunning the check after fix procedure
Check number of fact names in database: [WARNING]
Host (ID 1) has 405 fact values which is more than 100.
This can cause slow fact processing.
--------------------------------------------------------------------------------
Continue with step [Show knowledge base article for troubleshooting]?, [y(yes), n(no), q(quit)] n
Scenario [ForemanMaintain::Scenario::FilteredScenario] failed.
The following steps ended up in warning state:
[foreman-fact-names]
The steps in warning state itself might not mean there is an error,
but it should be reviewed to ensure the behavior is expected
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 (Satellite 6.8 Satellite Maintenance Release), 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-2020:4365
Customers often suffer from many fact names which can slower performance of whole instance. Please add new check: hosts_count = select count(*) from host; facts_count = select count(*) from fact_name; if facts_count > 10_000 + hosts_count * 2 print warning "There are more fact names than estimated #{facts_count}, consider adding fact exclude filter." end This should give a reasonable warning threshold: 1k hosts = 12k fact names 10k hosts = 30k fact names 50k hosts = 110k fact names