Bug 964332 - autosubscribe times out after one minute without feedback leaving system partially autosubscribed
autosubscribe times out after one minute without feedback leaving system part...
Status: CLOSED CURRENTRELEASE
Product: Candlepin
Classification: Community
Component: candlepin (Show other bugs)
0.9
Unspecified Unspecified
unspecified Severity medium
: ---
: ---
Assigned To: Bryan Kearney
Katello QA List
:
Depends On:
Blocks: rhsm-rhel70
  Show dependency treegraph
 
Reported: 2013-05-17 17:34 EDT by John Sefler
Modified: 2015-05-14 10:54 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-09-29 15:05:29 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description John Sefler 2013-05-17 17:34:56 EDT
Description of problem:
when all of the generated TESTDATA product certs are installed and we have a high socket physical system, autosubscribe is falling short of achieving total compliance of the "Awesome OS Instance Server Bits".

Version-Release number of selected component (if applicable):
[root@jsefler-5 ~]# subscription-manager version
server type: This system is currently not registered.
subscription management server: 0.8.7-1
subscription-manager: 1.8.7-1.git.45.1094dd0.el5
python-rhsm: 1.8.11-1.git.1.7236cc2.el5
[root@jsefler-f14-candlepin candlepin]# git show-ref | grep master
41d15a6617c4009760a6d3f07dc1d896e07215bc refs/heads/master


How reproducible:


Steps to Reproduce:
deploy candlepin with the TESTDATA imported
place all the TESTDATA generated product certs into /etc/pki/product
create facts to simulate a 22 socket physical system
attempt to autosubscribe to achieve total compliance

[root@jsefler-5 ~]# cat /etc/rhsm/facts/test.facts 
{"cpu.cpu_socket(s)":"22", "virt.is_guest":"false"}


[root@jsefler-5 ~]# subscription-manager register --autosubscribe --username testuser1 --org admin --serverurl=jsefler-f14-candlepin.usersys.redhat.com:8443:/candlepin
Password: 
The system has been registered with ID: b11f67b9-05a0-4968-95e7-64dfdd855a3e 
Installed Product Current Status:
Product Name: Awesome OS for S390 Bits
Status:       Not Subscribed

Product Name: Stackable with Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS Developer Basic
Status:       Not Subscribed

Product Name: Awesome OS for x86_64/i686/ia64/ppc/ppc64/s390x/s390 Bits
Status:       Not Subscribed

Product Name: Awesome OS Workstation Bits
Status:       Not Subscribed

Product Name: Awesome OS Developer Bits
Status:       Not Subscribed

Product Name: Management Bits
Status:       Not Subscribed

Product Name: Large File Support Bits
Status:       Not Subscribed

Product Name: Awesome OS Modifier Bits
Status:       Subscribed

Product Name: Clustering Bits
Status:       Not Subscribed

Product Name: Shared Storage Bits
Status:       Not Subscribed

Product Name: Awesome OS Server Bits
Status:       Subscribed

Product Name: Awesome OS Premium Architecture Bits
Status:       Not Subscribed

Product Name: Awesome OS for ia64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for i686 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS for ppc64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390X Bits
Status:       Not Subscribed

Product Name: Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Virt Only Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86 Bits
Status:       Not Subscribed

Product Name: Awesome OS Instance Server Bits
Status:       Partially Subscribed        <====== SOMETHING IS WRONG ========

Product Name: Shared File System Bits
Status:       Subscribed

Product Name: Multi-Attribute Limited Product
Status:       Subscribed

Product Name: Multiplier Product Bits
Status:       Not Subscribed

Product Name: RAM Limiting Product
Status:       Subscribed

Product Name: Core Limiting Product
Status:       Subscribed

Product Name: Load Balancing Bits
Status:       Not Subscribed


Let's verify what was consumed from the "Awesome OS Instance" subscriptions...

[root@jsefler-5 ~]# subscription-manager list --consumed | grep "Awesome OS Instance"  -A10
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          43
Account:           12331131231
Serial Number:     7380947313523807066
Pool ID:           8a90f8df3eb2f287013eb2f3cb9a074f
Active:            True
Quantity Used:     2
Service Level:     Standard
Service Type:      L1-L3
Status Details:    Only covers 12 of 21 sockets.
--
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          42
Account:           12331131231
Serial Number:     231168290348963981
Pool ID:           8a90f8df3eb2f287013eb2f3cbaf075d
Active:            True
Quantity Used:     10
Service Level:     Standard
Service Type:      L1-L3
Status Details:    Only covers 12 of 21 sockets.


"Only covers 12 of 21 sockets" is indeed true, but the question is why did autosubscribe stop there?  There are still available entitlements from an instance based pool.  take a look...

[root@jsefler-5 ~]# subscription-manager list --avail | grep "Awesome OS Instance" -A9
Subscription Name: Awesome OS Instance Based (Standard Support)
SKU:               awesomeos-instancebased
Pool ID:           8a90f8df3eb2f287013eb2f3cb9a074f
Quantity:          18
Service Level:     Standard
Service Type:      L1-L3
Multi-Entitlement: Yes
Ends:              05/16/2014
System Type:       Physical


^^^ See.  There is a quantity of 18 that were ignored by autosubscribe.  Why?

Watch this amazing trick...  Let's try a second autosubscribe...


[root@jsefler-5 ~]# subscription-manager subscribe --auto
Installed Product Current Status:
Product Name: Awesome OS for S390 Bits
Status:       Not Subscribed

Product Name: Stackable with Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS Developer Basic
Status:       Not Subscribed

Product Name: Awesome OS for x86_64/i686/ia64/ppc/ppc64/s390x/s390 Bits
Status:       Not Subscribed

Product Name: Awesome OS Workstation Bits
Status:       Not Subscribed

Product Name: Awesome OS Developer Bits
Status:       Not Subscribed

Product Name: Management Bits
Status:       Not Subscribed

Product Name: Large File Support Bits
Status:       Not Subscribed

Product Name: Awesome OS Modifier Bits
Status:       Subscribed

Product Name: Clustering Bits
Status:       Not Subscribed

Product Name: Shared Storage Bits
Status:       Not Subscribed

Product Name: Awesome OS Server Bits
Status:       Subscribed

Product Name: Awesome OS Premium Architecture Bits
Status:       Not Subscribed

Product Name: Awesome OS for ia64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for i686 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS for ppc64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390X Bits
Status:       Not Subscribed

Product Name: Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Virt Only Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86 Bits
Status:       Not Subscribed

Product Name: Awesome OS Instance Server Bits
Status:       Subscribed    <----- BANG!  NOW WE ARE TOTALLY SUBSCRIBED?

Product Name: Shared File System Bits
Status:       Subscribed

Product Name: Multi-Attribute Limited Product
Status:       Subscribed

Product Name: Multiplier Product Bits
Status:       Not Subscribed

Product Name: RAM Limiting Product
Status:       Subscribed

Product Name: Core Limiting Product
Status:       Subscribed

Product Name: Load Balancing Bits
Status:       Not Subscribed


[root@jsefler-5 ~]# subscription-manager list --consumed | grep "Awesome OS Instance"  -A10
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          43
Account:           12331131231
Serial Number:     7380947313523807066
Pool ID:           8a90f8df3eb2f287013eb2f3cb9a074f
Active:            True
Quantity Used:     2
Service Level:     Standard
Service Type:      L1-L3
Status Details:    
--
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          42
Account:           12331131231
Serial Number:     231168290348963981
Pool ID:           8a90f8df3eb2f287013eb2f3cbaf075d
Active:            True
Quantity Used:     10
Service Level:     Standard
Service Type:      L1-L3
Status Details:    
--
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          43
Account:           12331131231
Serial Number:     6669679485832892886
Pool ID:           8a90f8df3eb2f287013eb2f3cb9a074f
Active:            True
Quantity Used:     10
Service Level:     Standard
Service Type:      L1-L3
Status Details:    


YUP.  Now we are totally subscribed for all 22 sockets for the installed "Awesome OS Instance Server Bits".  BUT WHY DID IT TAKE TWO ATTEMPTS TO AUTOSUBSCRIBE?


Now watch this.... let's start over without the other product certs keeping "Awesome OS Instance Server Bits" and see if autosubscribe works without the confusion of all the other installed products.


[root@jsefler-5 ~]# subscription-manager unsubscribe --all
15 subscriptions removed at the server.
15 local certificates have been deleted.
[root@jsefler-5 ~]# rm /etc/pki/product/*.pem
rm: remove regular file `/etc/pki/product/100000000000000.pem'? y
rm: remove regular file `/etc/pki/product/100000000000001.pem'? y
rm: remove regular file `/etc/pki/product/1000000000000023.pem'? y
rm: remove regular file `/etc/pki/product/100000000000002.pem'? y
rm: remove regular file `/etc/pki/product/100000000000003.pem'? y
rm: remove regular file `/etc/pki/product/100000000000005.pem'? y
rm: remove regular file `/etc/pki/product/100000000000006.pem'? y
rm: remove regular file `/etc/pki/product/100000000000011.pem'? y
rm: remove regular file `/etc/pki/product/100000000000020.pem'? y
rm: remove regular file `/etc/pki/product/100000000000060.pem'? y
rm: remove regular file `/etc/pki/product/100000000000069.pem'? y
rm: remove regular file `/etc/pki/product/1144.pem'? y
rm: remove regular file `/etc/pki/product/1.pem'? y
rm: remove regular file `/etc/pki/product/27060.pem'? y
rm: remove regular file `/etc/pki/product/32060.pem'? n
rm: remove regular file `/etc/pki/product/37060.pem'? y
rm: remove regular file `/etc/pki/product/37062.pem'? y
rm: remove regular file `/etc/pki/product/37065.pem'? y
rm: remove regular file `/etc/pki/product/37067.pem'? y
rm: remove regular file `/etc/pki/product/37068.pem'? y
rm: remove regular file `/etc/pki/product/37069.pem'? y
rm: remove regular file `/etc/pki/product/37070.pem'? y
rm: remove regular file `/etc/pki/product/37080.pem'? y
rm: remove regular file `/etc/pki/product/801.pem'? y
rm: remove regular file `/etc/pki/product/806.pem'? y
rm: remove regular file `/etc/pki/product/88888.pem'? y
rm: remove regular file `/etc/pki/product/900.pem'? y
rm: remove regular file `/etc/pki/product/917571.pem'? y

[root@jsefler-5 ~]# subscription-manager list --installed
+-------------------------------------------+
    Installed Product Status
+-------------------------------------------+
Product Name:   Awesome OS Instance Server Bits
Product ID:     32060
Version:        6.1
Arch:           ALL
Status:         Not Subscribed
Status Details: Not covered by a valid subscription.
Starts:         
Ends:           

[root@jsefler-5 ~]# subscription-manager subscribe --auto
Installed Product Current Status:
Product Name: Awesome OS Instance Server Bits
Status:       Subscribed

[root@jsefler-5 ~]# subscription-manager list --consumed
+-------------------------------------------+
   Consumed Subscriptions
+-------------------------------------------+
Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          42
Account:           12331131231
Serial Number:     2525644419558391502
Pool ID:           8a90f8df3eb2f287013eb2f3cbaf075d
Active:            True
Quantity Used:     2
Service Level:     Standard
Service Type:      L1-L3
Status Details:    
Starts:            05/16/2013
Ends:              05/16/2014

Subscription Name: Awesome OS Instance Based (Standard Support)
Provides:          Awesome OS Instance Server Bits
SKU:               awesomeos-instancebased
Contract:          43
Account:           12331131231
Serial Number:     2204886971457331672
Pool ID:           8a90f8df3eb2f287013eb2f3cb9a074f
Active:            True
Quantity Used:     20
Service Level:     Standard
Service Type:      L1-L3
Status Details:    
Starts:            05/16/2013
Ends:              05/16/2014


SUCCESS!.  Without the presence of all the other products, a single autosubscribe of a 22 socket physical system consumed enough "Awesome OS Instance Based" subscriptions to be compliant.
Comment 1 RHEL Product and Program Management 2013-05-17 17:58:34 EDT
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux release.  Product Management has
requested further review of this request by Red Hat Engineering, for
potential inclusion in a Red Hat Enterprise Linux release for currently
deployed products.  This request is not yet committed for inclusion in
a release.
Comment 2 John Sefler 2013-05-18 00:03:25 EDT
Very interesting.....
While attempting to reproduce this bugzilla, The initial autosubscribe is now working for "Awesome OS Instance Server Bits"; however "Multi-Attribute Limited Product" is now partial after the initial auto-subscribe and a second attempt to auto-subscribe successfully completes the compliance of "Multi-Attribute Limited Product".

Watch....

[root@jsefler-5 ~]# cat /etc/rhsm/facts/test.facts 
{"cpu.cpu_socket(s)":"22", "virt.is_guest":"false"}

[root@jsefler-5 ~]# subscription-manager register --autosubscribe --username testuser1 --org admin --serverurl=jsefler-f14-candlepin.usersys.redhat.com:8443:/candlepin
Password: 
The system has been registered with ID: 67c1987d-0417-457d-a392-e4a9cfe07190 
Installed Product Current Status:
Product Name: Awesome OS for S390 Bits
Status:       Not Subscribed

Product Name: Stackable with Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS Developer Basic
Status:       Not Subscribed

Product Name: Awesome OS for x86_64/i686/ia64/ppc/ppc64/s390x/s390 Bits
Status:       Not Subscribed

Product Name: Awesome OS Workstation Bits
Status:       Not Subscribed

Product Name: Awesome OS Developer Bits
Status:       Not Subscribed

Product Name: Management Bits
Status:       Not Subscribed

Product Name: Large File Support Bits
Status:       Not Subscribed

Product Name: Awesome OS Modifier Bits
Status:       Subscribed

Product Name: Clustering Bits
Status:       Not Subscribed

Product Name: Shared Storage Bits
Status:       Not Subscribed

Product Name: Awesome OS Server Bits
Status:       Subscribed

Product Name: Awesome OS Premium Architecture Bits
Status:       Not Subscribed

Product Name: Awesome OS for ia64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for i686 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS for ppc64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390X Bits
Status:       Not Subscribed

Product Name: Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Virt Only Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86 Bits
Status:       Not Subscribed

Product Name: Awesome OS Instance Server Bits
Status:       Subscribed    <============== THIS IS EXACTLY CORRECT

Product Name: Shared File System Bits
Status:       Subscribed

Product Name: Multi-Attribute Limited Product
Status:       Partially Subscribed  <========== BUT THIS IS NOT RIGHT

Product Name: Multiplier Product Bits
Status:       Not Subscribed

Product Name: RAM Limiting Product
Status:       Subscribed

Product Name: Core Limiting Product
Status:       Subscribed

Product Name: Load Balancing Bits
Status:       Not Subscribed

[root@jsefler-5 ~]# subscription-manager subscribe --auto
Installed Product Current Status:
Product Name: Awesome OS for S390 Bits
Status:       Not Subscribed

Product Name: Stackable with Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS Developer Basic
Status:       Not Subscribed

Product Name: Awesome OS for x86_64/i686/ia64/ppc/ppc64/s390x/s390 Bits
Status:       Not Subscribed

Product Name: Awesome OS Workstation Bits
Status:       Not Subscribed

Product Name: Awesome OS Developer Bits
Status:       Not Subscribed

Product Name: Management Bits
Status:       Not Subscribed

Product Name: Large File Support Bits
Status:       Not Subscribed

Product Name: Awesome OS Modifier Bits
Status:       Subscribed

Product Name: Clustering Bits
Status:       Not Subscribed

Product Name: Shared Storage Bits
Status:       Not Subscribed

Product Name: Awesome OS Server Bits
Status:       Subscribed

Product Name: Awesome OS Premium Architecture Bits
Status:       Not Subscribed

Product Name: Awesome OS for ia64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for i686 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86_64 Bits
Status:       Partially Subscribed

Product Name: Awesome OS for ppc64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390X Bits
Status:       Not Subscribed

Product Name: Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Virt Only Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86 Bits
Status:       Not Subscribed

Product Name: Awesome OS Instance Server Bits
Status:       Subscribed

Product Name: Shared File System Bits
Status:       Subscribed

Product Name: Multi-Attribute Limited Product
Status:       Subscribed   <============== WOW! A SECOND AUTOSUBSCRIBE FINISHED THE COMPLIANCE

Product Name: Multiplier Product Bits
Status:       Not Subscribed

Product Name: RAM Limiting Product
Status:       Subscribed

Product Name: Core Limiting Product
Status:       Subscribed

Product Name: Load Balancing Bits
Status:       Not Subscribed
Comment 3 John Sefler 2013-05-18 00:06:48 EDT
As I repeatedly try to reproduce this bug, I observe randomly alternating behavior between scenarios in comment 0 and comment 2.
Comment 4 John Sefler 2013-05-22 14:22:22 EDT
Moving this bug to candlepin who actually owns the autosubscribe logic.
Comment 5 Devan Goodwin 2013-06-07 09:18:28 EDT
With current implementation of auto-subscribe, we are truly not ready to handle 22 installed products selecting from 80+ pools. Autosubscribe is selecting all possible combinations of these (which is why the request is *so* slow), but it also generates thousands and thousands of debug logging lines and is *extremely* difficult to dig through to find out why this is happening.

I agree that the behaviour is strange, though not terribly harmful, but at this point the cost to fix this is too high for such a low benefit. I am going to move this to the rhel7 tracker instead.
Comment 6 John Sefler 2013-06-07 18:28:42 EDT
While testing another autosubscribe scenario, I found this Traceback which likely explains what is happening in this bug....


2013-06-07 18:15:26,561 [DEBUG]  @plugins.py:720 - PluginManager.run called for pre_auto_attach with args: {'consumer_uuid': '0989c980-be4f-4ffe-acab-0f6844c1e056'}
2013-06-07 18:15:26,561 [DEBUG]  @plugins.py:728 - Running pre_auto_attach_hook in auto_attach_test.AutoAttachTestPlugin
2013-06-07 18:15:26,561 [INFO]  @auto_attach_test.py:32 - Running pre_auto_attach_hook: system is about to auto-attach
2013-06-07 18:15:26,561 [INFO]  @auto_attach_test.py:33 - Running pre_auto_attach_hook: auto-attaching consumer is 0989c980-be4f-4ffe-acab-0f6844c1e056
2013-06-07 18:15:26,562 [DEBUG]  @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/
2013-06-07 18:15:26,562 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2013-06-07 18:15:26,562 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2013-06-07 18:15:26,563 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-5candlepin.pem'
2013-06-07 18:15:26,563 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-candlepin.pem'
2013-06-07 18:15:26,564 [DEBUG]  @connection.py:415 - Making request: POST /candlepin/consumers/0989c980-be4f-4ffe-acab-0f6844c1e056/entitlements
2013-06-07 18:16:26,606 [WARNING]  @managercli.py:198 - Error during auto-attach.
2013-06-07 18:16:26,607 [ERROR]  @managercli.py:199 - timed out
Traceback (most recent call last):
  File "/usr/share/rhsm/subscription_manager/managercli.py", line 194, in autosubscribe
    ents = cp.bind(consumer_uuid)  # new style
  File "/usr/lib64/python2.4/site-packages/rhsm/connection.py", line 847, in bind
    return self.conn.request_post(method)
  File "/usr/lib64/python2.4/site-packages/rhsm/connection.py", line 484, in request_post
    return self._request("POST", method, params)
  File "/usr/lib64/python2.4/site-packages/rhsm/connection.py", line 429, in _request
    response = conn.getresponse()
  File "/usr/lib64/python2.4/httplib.py", line 872, in getresponse
    response.begin()
  File "/usr/lib64/python2.4/httplib.py", line 336, in begin
    version, status, reason = self._read_status()
  File "/usr/lib64/python2.4/httplib.py", line 294, in _read_status
    line = self.fp.readline()
  File "/usr/lib64/python2.4/socket.py", line 325, in readline
    data = recv(1)
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 217, in read
    return self._read_bio(size)
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 202, in _read_bio
    return m2.ssl_read(self.ssl, size, self._timeout)
SSLTimeoutError: timed out
2013-06-07 18:16:26,624 [DEBUG]  @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/
2013-06-07 18:16:26,625 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2013-06-07 18:16:26,625 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2013-06-07 18:16:26,626 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-5candlepin.pem'
2013-06-07 18:16:26,628 [DEBUG]  @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jsefler-f14-candlepin.pem'
2013-06-07 18:16:26,630 [DEBUG]  @connection.py:415 - Making request: GET /candlepin/consumers/0989c980-be4f-4ffe-acab-0f6844c1e056/certificates/serials
2013-06-07 18:16:27,438 [DEBUG]  @connection.py:434 - Response status: 200
Comment 7 John Sefler 2013-06-07 18:36:02 EDT
(In reply to John Sefler from comment #6)
> While testing another autosubscribe scenario, I found this Traceback which
> likely explains what is happening in this bug....
> 

I also learned that when this timeout Traceback occurs during an autosubscribe, all enabled post_auto_attach hooks are NOT called.
Comment 8 John Sefler 2013-06-19 10:19:04 EDT
Changing the title of this bug from:
> autosubscribe is failing to achieve total compliance of "Awesome OS Instance Server Bits"
to:
> autosubscribe times out after one minute without feedback leaving system partially autosubscribed
Comment 9 Carter Kozak 2013-08-19 14:18:56 EDT
This should be fixed now.  Autosubscribe will only bind ents/sets of ents that make a stack/product fully subscribed, never partial.

some  relevant commits:

commit fcf4838742aff7db84ce2aeb76b78c884f8baca1
Author: ckozak <ckozak@redhat.com>
Date:   Mon Aug 19 13:00:14 2013 -0400

    style, ===, missing semicolons, typos

commit 74b2f6307e0d37053ff68ffff1cb9b4a93d46e97
Author: ckozak <ckozak@redhat.com>
Date:   Mon Aug 19 10:39:38 2013 -0400

    changed some tests

commit c52de0a3dcf92a82cf36983c59400101dfa1c3c8
Author: ckozak <ckozak@redhat.com>
Date:   Tue Aug 13 15:20:43 2013 -0400

    better removal of unnecessary pools by attribute.  testing

commit 86357662c0103bd07e895b523dd961437445722b
Author: ckozak <ckozak@redhat.com>
Date:   Tue Aug 13 11:50:52 2013 -0400

    added some comments, fixed some edge cases

commit fed5a6a379d0d131525890e009a2faf09afd0a11
Author: ckozak <ckozak@redhat.com>
Date:   Thu Aug 8 16:06:32 2013 -0400

    updating autoheal
Comment 10 John Sefler 2014-03-03 15:16:04 EST
Verifying Version...
[root@jsefler-7 ~]# subscription-manager version
server type: This system is currently not registered.
subscription management server: 0.9.4-1
subscription-manager: 1.10.14-3.el7
python-rhsm: 1.10.12-1.el7

[root@jsefler-7 ~]# echo '{"cpu.cpu_socket(s)":"22", "virt.is_guest":"false"}' > /etc/rhsm/facts/test.facts
[root@jsefler-7 ~]# cat /etc/rhsm/facts/test.facts
{"cpu.cpu_socket(s)":"22", "virt.is_guest":"false"}

[root@jsefler-7 ~]# subscription-manager register --autosubscribe
Username: testuser1
Password: 
Organization: admin
The system has been registered with ID: cb466ad1-05b5-4215-8aed-65aa3635c000 
Installed Product Current Status:
Product Name: Awesome OS for ia64 Bits
Status:       Not Subscribed

Product Name: Stackable with Awesome OS for x86_64 Bits
Status:       Subscribed

Product Name: Awesome OS Developer Basic
Status:       Not Subscribed

Product Name: Awesome OS for x86_64/i686/ia64/ppc/ppc64/s390x/s390 Bits
Status:       Not Subscribed

Product Name: Awesome OS Workstation Bits
Status:       Not Subscribed

Product Name: Red Hat Enterprise Linux 7 Server High Touch Beta
Status:       Not Subscribed

Product Name: Awesome OS Developer Bits
Status:       Not Subscribed

Product Name: Management Bits
Status:       Not Subscribed

Product Name: Large File Support Bits
Status:       Not Subscribed

Product Name: Awesome OS Modifier Bits
Status:       Subscribed

Product Name: Clustering Bits
Status:       Not Subscribed

Product Name: Shared Storage Bits
Status:       Not Subscribed

Product Name: Awesome OS Server Bits
Status:       Subscribed

Product Name: Awesome OS Premium Architecture Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390 Bits
Status:       Not Subscribed

Product Name: Awesome OS for i686 Bits
Status:       Not Subscribed

Product Name: Awesome OS for x86_64 Bits
Status:       Subscribed

Product Name: Awesome OS for ppc64 Bits
Status:       Not Subscribed

Product Name: Awesome OS for S390X Bits
Status:       Not Subscribed

Product Name: Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Awesome OS for All Arch (all per arch content) Bits
Status:       Subscribed

Product Name: Awesome OS for All Arch (x86 content) Bits
Status:       Subscribed

Product Name: Awesome OS for All Arch (excpt for x86_64 content) Bits
Status:       Subscribed

Product Name: Awesome OS for All Arch (just x86_64 content) Bits
Status:       Subscribed

Product Name: Awesome OS for x86 Bits
Status:       Not Subscribed

Product Name: Awesome OS Instance Server Bits
Status:       Subscribed

Product Name: Shared File System Bits
Status:       Subscribed

Product Name: Virt Only Awesome OS for i386 Bits
Status:       Not Subscribed

Product Name: Multi-Attribute Limited Product
Status:       Subscribed

Product Name: Awesome Hypervisor Bits
Status:       Subscribed

Product Name: Multiplier Product Bits
Status:       Not Subscribed

Product Name: RAM Limiting Product
Status:       Subscribed

Product Name: Core Limiting Product
Status:       Subscribed

Product Name: Load Balancing Bits
Status:       Not Subscribed

[root@jsefler-7 ~]# subscription-manager list --consumed | grep "Quantity Used"
Quantity Used:     6
Quantity Used:     1
Quantity Used:     1
Quantity Used:     1
Quantity Used:     1
Quantity Used:     1
Quantity Used:     1
Quantity Used:     1
Quantity Used:     8
Quantity Used:     1
Quantity Used:     1
Quantity Used:     10
Quantity Used:     12
Quantity Used:     10
Quantity Used:     1


VERIFIED: The performance improvements in candlepin now allow this test scenario to attach many subscriptions with large enough quantities to achieve full compliance on a 22 socket physical system despite the large number of installed products (34).

Automated test coverage for this bug is now passing.
Comment 12 Bryan Kearney 2014-09-29 15:05:29 EDT
These bugs were fixed during 7.0 but not moved to CLOSED. They have been delivered

Note You need to log in before you can comment on or make changes to this bug.