Bug 1655628

Summary: Registered hosts' report performs poorly
Product: Red Hat Satellite Reporter: Lukáš Hellebrandt <lhellebr>
Component: ReportingAssignee: Marek Hulan <mhulan>
Status: CLOSED ERRATA QA Contact: Lukáš Hellebrandt <lhellebr>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.5.0CC: fgarciad, inecas, mhulan, oprazak, zhunting
Target Milestone: 6.5.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: foreman-1.20.1.5-1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-14 12:39:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1673898    
Bug Blocks:    

Description Lukáš Hellebrandt 2018-12-03 15:27:40 UTC
Description of problem:
Performance testing shows that there's most likely something done inefficiently in the Registered hosts report. I've tested on a Satellite with 10 000 systems. 

When running a report without filters, it takes 8 minutes (there are no performance requirements specified so this should be fine). However, when running with a host filter such that it limits hosts to only 500 of these 10 000, the report generation consistently fails with ISE after 30 minutes.

Tested on a RHEL7 machine with Intel Xeon, 4 sockets, 32 cores, hyperthreading, 2.7 Ghz, 128 GB RAM

Version-Release number of selected component (if applicable):
6.5 snap 5

How reproducible:
Deterministic on one machine but may be influenced by the machine's performance.

Steps to Reproduce:
1. Have a Satellite with 10 000 systems, 500 of them with some easily filterable name
2. Monitor -> Report Templates -> Registered Hosts -> Generate
3. Fill in a filter such that it selects 500 systems
4. Submit

Actual results:
ISE after 30 minutes

Expected results:
Report generated. I'd expect it to be faster than without the filter

Comment 3 Marek Hulan 2018-12-04 17:36:52 UTC
Created redmine issue https://projects.theforeman.org/issues/25624 from this bug

Comment 4 Bryan Kearney 2019-01-07 21:14:52 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue https://projects.theforeman.org/issues/25624 has been resolved.

Comment 8 Lukáš Hellebrandt 2019-02-08 12:16:33 UTC
Verification blocked by bug 1673898.

Comment 9 Lukáš Hellebrandt 2019-03-28 12:37:06 UTC
Verified with Sat 6.5 snap 21.

Generating a report is now ~ 8 times faster (1 minute for 10000 systems). Also, filtering all hosts H to only hosts h is now faster than not filtering at all for |h|<<|H| (10 seconds for 700 systems).
The performance is, however, still a limit: with filter in form "<name>", for |h|=|H|=10000, the generating takes half an hour.

Comment 11 errata-xmlrpc 2019-05-14 12:39:22 UTC
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/RHSA-2019:1222