RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 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 "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". 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 "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-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.
Bug 1271158 - Failed to delete the host or hypervisor from stage candlepin by web UI
Summary: Failed to delete the host or hypervisor from stage candlepin by web UI
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: python-rhsm
Version: 6.8
Hardware: x86_64
OS: Linux
medium
low
Target Milestone: pre-dev-freeze
: ---
Assignee: Chris Snyder
QA Contact: Eko
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-10-13 09:28 UTC by Eko
Modified: 2016-05-10 20:37 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-05-10 20:37:52 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:0797 0 normal SHIPPED_LIVE python-rhsm and subscription-manager bug fix and enhancement update 2017-01-06 16:31:50 UTC

Description Eko 2015-10-13 09:28:41 UTC
Description of problem:
register a host to stage candlepin, and then try to delete it from the web ui,
the host is deleted successfully, but there are some error message found from rhsm.log 

Version-Release number of selected component (if applicable):
 - python-rhsm-1.15.4-5.el7.x86_64
 - subscription-manager-1.15.9-14.el7.x86_64
 - virt-who-0.14-9.el7.noarch
 - RHEL7.2-20151008.0-Server-x86_64 + vdsm mode against Stage candlepin

How reproducible:


Steps to Reproduce:

1. prepare a host and register it to stage candlepin by CLI
# subscription-manager register --username=virt-who-perf --password=redhat
Registering to: subscription.rhn.stage.redhat.com:443/subscription
The system has been registered with ID: 136aa925-62ab-40f1-9fa0-d49dae8116c8

2. restart virt-who service
# systemctl  restart virt-who

3. open the stage candlepin web site, you will find the host, and delete it from web ui. The unit(s) you selected have been deleted.

4. check rhsm.log, the error message as following:
2015-10-13 17:19:25,616 [INFO]  @subscriptionmanager.py:136 - Sending domain info: [
    {
        "guestId": "0bff30b0-7c7d-4884-a8a2-6b3b43daa963", 
        "state": 1, 
        "attributes": {
            "active": 1, 
            "virtWhoType": "vdsm", 
            "hypervisorType": "qemu"
        }
    }
]
2015-10-13 17:19:30,360 [ERROR]  @virtwho.py:190 - Error in communication with subscription manager:
Traceback (most recent call last):
  File "/usr/share/virt-who/virtwho.py", line 171, in send
    self._sendGuestList(report)
  File "/usr/share/virt-who/virtwho.py", line 196, in _sendGuestList
    manager.sendVirtGuests(report.guests)
  File "/usr/share/virt-who/manager/subscriptionmanager/subscriptionmanager.py", line 139, in sendVirtGuests
    self.connection.updateConsumer(self.uuid(), guest_uuids=serialized_guests)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 947, in updateConsumer
    ret = self.conn.request_put(method, params)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 653, in request_put
    return self._request("PUT", method, params)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 564, in _request
    self.validateResponse(result, request_type, handler)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 597, in validateResponse
    parsed['displayMessage'], parsed['deletedId'])
GoneException: Unit 136aa925-62ab-40f1-9fa0-d49dae8116c8 has been deleted

5. run "subscription-manager identity" to check, the unit is deleted.
# subscription-manager identity 
Unit 136aa925-62ab-40f1-9fa0-d49dae8116c8 has been deleted

6. but register the host again, shows "This system is already registered"
# subscription-manager register --username=virt-who-perf --password=redhat
This system is already registered. Use --force to override

7. need to run clean command and then register the host normally
# subscription-manager clean
All local data removed

# subscription-manager register --username=virt-who-perf --password=redhat
Registering to: subscription.rhn.stage.redhat.com:443/subscription
The system has been registered with ID: d074447e-917b-4e2f-9268-f36864fe25fb


Actual results:
if delete the host by stage candlepin web ui, the rhsm.log will show error message as "GoneException: Unit 136aa925-62ab-40f1-9fa0-d49dae8116c8 has been deleted".
but the host is not deleted normally, need to run "subscription-manager clean"

Expected results:
if delete the host by stage candlepin web ui, the rhsm.log should show "SubscriptionManagerUnregisteredError: Unable to read certificate, system is not registered or you are not root", don't need to clean for register the host again.

Additional info:

Comment 2 Radek Novacek 2015-10-13 10:23:16 UTC
It doesn't look like a bug in virt-who. It seems that either candlepin fails to delete the host properly or python-rhsm doesn't understand the reply from candlepin.

I'll move it to candlepin for evaluation.

Comment 3 Barnaby Court 2015-11-20 15:35:51 UTC
This is a doc issue that the conneciton module in python-rhsm does not document what exceptions it can raise. After that is doc'd there is a secondary bug that virt-who is not handling the exception.

Comment 5 Chris Snyder 2015-12-16 22:12:47 UTC
As of the following commits it seems virt-who now properly handles GoneException raised by python-rhsm:
"""
commit eb66da3d8f89307835dcb1cfbd5a715e4487d19e
Author: Radek Novacek <rnovacek>
Date:   Tue Nov 24 15:24:26 2015 +0100

    subscriptionmanager: handle GoneException correctly
    
    Just logging the error message is not correct, virt-who would try
    to create new job, but no job was created server side. Better to raise
    an exception.

commit 88f8f4e2f4dd92615d7922e4282da038491a5727
Author: Radek Novacek <rnovacek>
Date:   Tue Nov 24 15:21:09 2015 +0100

    subscriptionmanager: handle GoneException when consumer is deleted
"""

The solution to this BZ will be updated python-rhsm documentation regarding what can be raised by the methods used here by virt-who.

Comment 6 Chris Snyder 2015-12-17 20:55:16 UTC
PR here: https://github.com/candlepin/python-rhsm/pull/161

Comment 7 Chris Snyder 2016-01-04 19:22:48 UTC
The PR above with the docs fixes has been merged to upstream master. As we have not branched yet for rhel6.8 these changes will make the next build of python-rhsm.

Comment 9 Shwetha Kallesh 2016-01-20 11:31:30 UTC
An error message " Unable to generate a new identity for the system: Unit 6444637d-12ec-4e15-9b87-76456cf748e9 has been deleted" is logged into the /var/log/rhsm/rhsm.log now if you try to register again on a host that is  deleted from stage candlepin web UI

server type: Red Hat Subscription Management
subscription management server: 0.9.51.14-1
subscription management rules: 5.15.1
subscription-manager: 1.16.8-1.el6
python-rhsm: 1.16.6-1.el6


[root@hp-dl320egen8-01 ~]# subscription-manager register --username=virt-who-perf --password=redhat
Registering to: subscription.rhn.stage.redhat.com:443/subscription
The system has been registered with ID: 6444637d-12ec-4e15-9b87-76456cf748e9
 
[root@hp-dl320egen8-01 ~]# service virt-who restart
Stopping virt-who: [  OK  ]
Starting virt-who: [  OK  ]
 
[root@hp-dl320egen8-01 ~]# subscription-manager identity
Unit 6444637d-12ec-4e15-9b87-76456cf748e9 has been deleted
[root@hp-dl320egen8-01 ~]# subscription-manager register --username=virt-who-perf --password=redhat
This system is already registered. Use --force to override
 
[root@hp-dl320egen8-01 ~]# tail -f /var/log/rhsm/rhsm.log
        "state": 1,
        "attributes": {
            "active": 1,
            "hypervisorVersion": "0.12.1",
            "virtWhoType": "libvirt",
            "hypervisorType": "QEMU"
        }
    }
]
2016-01-19 08:45:08,630 [INFO]  @virtwho.py:250 - virt-who guest list update successful
2016-01-19 08:47:53,074 [DEBUG] subscription-manager:38457 @ga_loader.py:89 - ga_loader GaImporterGtk2
2016-01-19 08:47:53,077 [DEBUG] subscription-manager:38457 @plugins.py:569 - loaded plugin modules: [<module 'container_content' from '/usr/share/rhsm-plugins/container_content.pyc'>]
2016-01-19 08:47:53,077 [DEBUG] subscription-manager:38457 @plugins.py:570 - loaded plugins: {'container_content.ContainerContentPlugin': <container_content.ContainerContentPlugin object at 0x20f2790>}
2016-01-19 08:47:53,077 [DEBUG] subscription-manager:38457 @identity.py:131 - Loading consumer info from identity certificates.
2016-01-19 08:47:53,106 [INFO] subscription-manager:38457 @managercli.py:367 - Client Versions: {'python-rhsm': '1.16.5-1.el6', 'subscription-manager': '1.16.7-1.el6'}
2016-01-19 08:47:53,106 [INFO] subscription-manager:38457 @connection.py:815 - Connection built: host=subscription.rhn.stage.redhat.com port=443 handler=/subscription auth=identity_cert ca_dir=/etc/rhsm/ca/ verify=False
2016-01-19 08:47:53,106 [INFO] subscription-manager:38457 @connection.py:815 - Connection built: host=subscription.rhn.stage.redhat.com port=443 handler=/subscription auth=none
2016-01-19 08:47:53,116 [INFO] subscription-manager:38457 @managercli.py:342 - Consumer Identity name=hp-dl320egen8-01.rhts.eng.bos.redhat.com uuid=6444637d-12ec-4e15-9b87-76456cf748e9
2016-01-19 08:47:53,117 [DEBUG] subscription-manager:38457 @connection.py:509 - Loaded CA certificates from /etc/rhsm/ca/: redhat-uep.pem, redhat-entitlement-authority.pem
2016-01-19 08:47:53,117 [DEBUG] subscription-manager:38457 @connection.py:557 - Making request: GET /subscription/consumers/6444637d-12ec-4e15-9b87-76456cf748e9/owner
2016-01-19 08:47:53,663 [DEBUG] subscription-manager:38457 @connection.py:589 - Response: status=410
2016-01-19 08:47:53,664 [ERROR] subscription-manager:38457 @managercli.py:704 - Unit 6444637d-12ec-4e15-9b87-76456cf748e9 has been deleted
Traceback (most recent call last):
  File "/usr/share/rhsm/subscription_manager/managercli.py", line 671, in _do_command
    owner = self.cp.getOwner(consumerid)
  File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 1083, in getOwner
    return self.conn.request_get(method)
  File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 681, in request_get
    return self._request("GET", method)
  File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 598, in _request
    self.validateResponse(result, request_type, handler)
  File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 634, in validateResponse
    parsed['deletedId'])
GoneException: Unit 6444637d-12ec-4e15-9b87-76456cf748e9 has been deleted
2016-01-19 08:47:53,665 [ERROR] subscription-manager:38457 @managercli.py:705 - Error: Unable to generate a new identity for the system: Unit 6444637d-12ec-4e15-9b87-76456cf748e9 has been deleted
2016-01-19 08:59:41,650 [DEBUG] subscription-manager:39210 @ga_loader.py:89 - ga_loader GaImporterGtk2
2016-01-19 08:59:41,654 [DEBUG] subscription-manager:39210 @plugins.py:569 - loaded plugin modules: [<module 'container_content' from '/usr/share/rhsm-plugins/container_content.pyc'>]
2016-01-19 08:59:41,654 [DEBUG] subscription-manager:39210 @plugins.py:570 - loaded plugins: {'container_content.ContainerContentPlugin': <container_content.ContainerContentPlugin object at 0x1b8b810>}
2016-01-19 08:59:41,654 [DEBUG] subscription-manager:39210 @identity.py:131 - Loading consumer info from identity certificates.
2016-01-19 08:59:41,682 [INFO] subscription-manager:39210 @managercli.py:367 - Client Versions: {'python-rhsm': '1.16.5-1.el6', 'subscription-manager': '1.16.7-1.el6'}
2016-01-19 08:59:41,683 [INFO] subscription-manager:39210 @connection.py:815 - Connection built: host=subscription.rhn.stage.redhat.com port=443 handler=/subscription auth=identity_cert ca_dir=/etc/rhsm/ca/ verify=False
2016-01-19 08:59:41,683 [INFO] subscription-manager:39210 @connection.py:815 - Connection built: host=subscription.rhn.stage.redhat.com port=443 handler=/subscription auth=none
2016-01-19 08:59:41,684 [INFO] subscription-manager:39210 @managercli.py:367 - Client Versions: {'python-rhsm': '1.16.5-1.el6', 'subscription-manager': '1.16.7-1.el6'}
2016-01-19 08:59:41,693 [INFO] subscription-manager:39210 @managercli.py:342 - Consumer Identity name=hp-dl320egen8-01.rhts.eng.bos.redhat.com uuid=6444637d-12ec-4e15-9b87-76456cf748e9

Comment 11 errata-xmlrpc 2016-05-10 20:37:52 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://rhn.redhat.com/errata/RHBA-2016-0797.html


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