Description of problem: When viewing Subscription Watch, the calculated usage of CPU sockets for RHEL filtered for x86 systems only is occasionally less than the calculated usage of CPU sockets for all RHEL systems. Version-Release number of selected component (if applicable): How reproducible: For affected accounts, always from what I can see. Steps to Reproduce: 1.View Subscription Watch for an account affected by this bug 2.Note the calculated sockets for "All RHEL" 3.Filter RHEL against x86 4.Note the calculated value for x86 RHEL sockets Actual results: Value from (2) > value from (4) Expected results: Value from (4) always >= value from (2) Additional info: Note - Data sheet to be included noting affected accounts.
The exact reason behind this issue is that, if host is having product installed which is not listed under https://github.com/RedHatInsights/rhsm-subscriptions/blob/master/src/main/resources/product_id_to_products_map.yaml then it won't get considered under ALL page (as all product available on that host system is not valid for tally) but considered for x86 page as product id 69 found. Exact reproducer steps are: 1. Register a RHEL x86 system 2. Install software collection packages as (201 is not product considered for tally) 3. make sure subscription-manager list shows it # subscription-manager list +-------------------------------------------+ Installed Product Status +-------------------------------------------+ Product Name: Red Hat Software Collections (for RHEL Server) Product ID: 201 Version: 3 Arch: x86_64 Status: Subscribed Status Details: Starts: 04/03/2020 Ends: 04/01/2021 Product Name: Red Hat Satellite Product ID: 250 Version: 6.6 Arch: x86_64 Status: Subscribed Status Details: Starts: 04/03/2020 Ends: 04/01/2021 Product Name: Red Hat Enterprise Linux Server Product ID: 69 Version: 7.8 Arch: x86_64 Status: Subscribed Status Details: Starts: 04/03/2020 Ends: 04/01/2021 4. Sync tally
So, 201 was a red herring, the important product ID was 250 (Satellite). This looks like a quirk of how we implemented the rule of "if the node is Satellite", then don't count RHEL as RHEL is a part of Satellite. The rule currently drops a Satellite system from all RHEL and RHEL variants, but not "RHEL for" (architecture specific RHEL).
VERIFIED If host is satellite/capsule, host is not considered for RHEL usage.