Description of problem: When in a registered state and not subscribed to any entitlements, the subscription-manager-gui exits with an error and cannot start if it cannot reach the candlepin/entitlements host. Version-Release number of selected component (if applicable): subscription-manager-1.8.5-1.git.4.82e4aee.el6.x86_64 subscription-manager-gui-1.8.5-1.git.4.82e4aee.el6.x86_64 python-rhsm-1.8.8-1.git.0.c7ea5c0.el6.x86_64 How reproducible: always? Steps to Reproduce: 1. subscription-manager clean 2. subscription-manager register 3. change your 'hostname' in rhsm.conf to an invalid host or otherwise make your candlepin server unreachable (like stopping tomcat) 4. start the gui Actual results: The gui does not launch and exits 1. Traceback in log: 2013-04-02 10:41:37,582 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:37,583 [DEBUG] @profile.py:95 - Loading current RPM profile. 2013-04-02 10:41:37,822 [INFO] @connection.py:586 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False 2013-04-02 10:41:37,822 [INFO] @connection.py:597 - Connection Built: host: zjmolet-cp2.usersys.redhat.com, port: 8443, handler: /candlepin 2013-04-02 10:41:37,823 [DEBUG] @connection.py:199 - ContectConnection 2013-04-02 10:41:37,823 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:37,824 [DEBUG] @plugins.py:508 - loaded plugin modules: [] 2013-04-02 10:41:37,824 [DEBUG] @plugins.py:509 - loaded plugins: {} 2013-04-02 10:41:37,825 [DEBUG] @plugins.py:481 - Calling PluginManager init 2013-04-02 10:41:37,825 [DEBUG] @managergui.py:180 - Client Versions: {'python-rhsm': '1.8.8-1.git.0.c7ea5c0.el6', 'subscription-manager': '1.8.5-1.git.4.82e4aee.el6'} 2013-04-02 10:41:37,891 [DEBUG] @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/ 2013-04-02 10:41:37,891 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp2.pem' 2013-04-02 10:41:37,891 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp1.pem' 2013-04-02 10:41:37,892 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem' 2013-04-02 10:41:37,893 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem' 2013-04-02 10:41:37,893 [DEBUG] @connection.py:415 - Making request: GET /candlepin/ 2013-04-02 10:41:37,899 [ERROR] @utils.py:374 - Error while checking server version: [Errno -2] Name or service not known 2013-04-02 10:41:37,899 [ERROR] @utils.py:376 - [Errno -2] Name or service not known Traceback (most recent call last): File "/usr/share/rhsm/subscription_manager/utils.py", line 364, in get_server_versions if cp.supports_resource("status"): File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 623, in supports_resource self._load_supported_resources() File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 610, in _load_supported_resources resources_list = self.conn.request_get("/") File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 481, in request_get return self._request("GET", method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 422, in _request conn.request(request_type, handler, body=body, headers=headers) File "/usr/lib64/python2.6/httplib.py", line 914, in request self._send_request(method, url, body, headers) File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request self.endheaders() File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders self._send_output() File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output self.send(msg) File "/usr/lib64/python2.6/httplib.py", line 739, in send self.connect() File "/usr/lib64/python2.6/site-packages/M2Crypto/httpslib.py", line 51, in connect socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM): gaierror: [Errno -2] Name or service not known 2013-04-02 10:41:37,902 [DEBUG] @managergui.py:181 - Server Versions: {'candlepin': 'Unknown', 'server-type': 'Red Hat Subscription Management'} 2013-04-02 10:41:37,962 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,008 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,332 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,557 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,644 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,645 [DEBUG] @injection.py:65 - Returning callable provider for feature CERT_SORTER: <class 'subscription_manager.cert_sorter.CertSorter'> 2013-04-02 10:41:38,645 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,668 [DEBUG] @certdirectory.py:188 - Installed product IDs: ['100000000000006', '1000000000000023', '1144', '100000000000011', '27060', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000069', '100000000000020', '88888', '917571', '801', '37070'] 2013-04-02 10:41:38,668 [DEBUG] @injection.py:65 - Returning callable provider for feature STATUS_CACHE: <class 'subscription_manager.cache.StatusCache'> 2013-04-02 10:41:38,669 [DEBUG] @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/ 2013-04-02 10:41:38,669 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp2.pem' 2013-04-02 10:41:38,670 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp1.pem' 2013-04-02 10:41:38,670 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem' 2013-04-02 10:41:38,671 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem' 2013-04-02 10:41:38,672 [DEBUG] @connection.py:415 - Making request: GET /candlepin/consumers/b85c4eb1-058e-42ad-89a2-d976c2575d4f/compliance 2013-04-02 10:41:38,678 [ERROR] @cache.py:224 - [Errno -2] Name or service not known Traceback (most recent call last): File "/usr/share/rhsm/subscription_manager/cache.py", line 212, in load_status self._sync_with_server(uep, uuid) File "/usr/share/rhsm/subscription_manager/cache.py", line 197, in _sync_with_server self.server_status = uep.getCompliance(uuid) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 738, in getCompliance return self.conn.request_get(method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 481, in request_get return self._request("GET", method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 422, in _request conn.request(request_type, handler, body=body, headers=headers) File "/usr/lib64/python2.6/httplib.py", line 914, in request self._send_request(method, url, body, headers) File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request self.endheaders() File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders self._send_output() File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output self.send(msg) File "/usr/lib64/python2.6/httplib.py", line 739, in send self.connect() File "/usr/lib64/python2.6/site-packages/M2Crypto/httpslib.py", line 51, in connect socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM): gaierror: [Errno -2] Name or service not known 2013-04-02 10:41:38,679 [WARNING] @cache.py:229 - Unable to reach server, using cached status. 2013-04-02 10:41:38,681 [DEBUG] @cert_sorter.py:167 - valid entitled products: [] 2013-04-02 10:41:38,682 [DEBUG] @cert_sorter.py:168 - expired entitled products: [] 2013-04-02 10:41:38,682 [DEBUG] @cert_sorter.py:169 - partially entitled products: [] 2013-04-02 10:41:38,683 [DEBUG] @cert_sorter.py:170 - unentitled products: ['100000000000060', '1000000000000023', '1144', '100000000000011', '27060', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000069', '100000000000020', '88888', '917571', '801', '37070'] 2013-04-02 10:41:38,683 [DEBUG] @cert_sorter.py:171 - future products: [] 2013-04-02 10:41:38,683 [DEBUG] @cert_sorter.py:172 - partial stacks: [] 2013-04-02 10:41:38,684 [DEBUG] @cert_sorter.py:173 - entitlements valid until: 2013-04-02 12:29:35.439000+00:00 2013-04-02 10:41:38,702 [DEBUG] @injection.py:65 - Returning callable provider for feature CERT_SORTER: <class 'subscription_manager.cert_sorter.CertSorter'> 2013-04-02 10:41:38,702 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,703 [DEBUG] @certdirectory.py:188 - Installed product IDs: ['100000000000006', '1000000000000023', '1144', '100000000000011', '27060', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000060', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000069', '100000000000020', '88888', '917571', '801', '37070'] 2013-04-02 10:41:38,703 [DEBUG] @injection.py:65 - Returning callable provider for feature STATUS_CACHE: <class 'subscription_manager.cache.StatusCache'> 2013-04-02 10:41:38,703 [DEBUG] @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/ 2013-04-02 10:41:38,704 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp2.pem' 2013-04-02 10:41:38,704 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp1.pem' 2013-04-02 10:41:38,705 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem' 2013-04-02 10:41:38,706 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem' 2013-04-02 10:41:38,707 [DEBUG] @connection.py:415 - Making request: GET /candlepin/consumers/b85c4eb1-058e-42ad-89a2-d976c2575d4f/compliance 2013-04-02 10:41:38,712 [ERROR] @cache.py:224 - [Errno -2] Name or service not known Traceback (most recent call last): File "/usr/share/rhsm/subscription_manager/cache.py", line 212, in load_status self._sync_with_server(uep, uuid) File "/usr/share/rhsm/subscription_manager/cache.py", line 197, in _sync_with_server self.server_status = uep.getCompliance(uuid) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 738, in getCompliance return self.conn.request_get(method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 481, in request_get return self._request("GET", method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 422, in _request conn.request(request_type, handler, body=body, headers=headers) File "/usr/lib64/python2.6/httplib.py", line 914, in request self._send_request(method, url, body, headers) File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request self.endheaders() File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders self._send_output() File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output self.send(msg) File "/usr/lib64/python2.6/httplib.py", line 739, in send self.connect() File "/usr/lib64/python2.6/site-packages/M2Crypto/httpslib.py", line 51, in connect socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM): gaierror: [Errno -2] Name or service not known 2013-04-02 10:41:38,713 [WARNING] @cache.py:229 - Unable to reach server, using cached status. 2013-04-02 10:41:38,715 [DEBUG] @cert_sorter.py:167 - valid entitled products: [] 2013-04-02 10:41:38,715 [DEBUG] @cert_sorter.py:168 - expired entitled products: [] 2013-04-02 10:41:38,716 [DEBUG] @cert_sorter.py:169 - partially entitled products: [] 2013-04-02 10:41:38,716 [DEBUG] @cert_sorter.py:170 - unentitled products: ['100000000000060', '1000000000000023', '1144', '100000000000011', '27060', '1', '37069', '37068', '37080', '37065', '37067', '37060', '37062', '100000000000006', '100000000000005', '100000000000002', '100000000000003', '100000000000000', '100000000000001', '100000000000069', '100000000000020', '88888', '917571', '801', '37070'] 2013-04-02 10:41:38,716 [DEBUG] @cert_sorter.py:171 - future products: [] 2013-04-02 10:41:38,717 [DEBUG] @cert_sorter.py:172 - partial stacks: [] 2013-04-02 10:41:38,717 [DEBUG] @cert_sorter.py:173 - entitlements valid until: 2013-04-02 12:29:35.439000+00:00 2013-04-02 10:41:38,717 [DEBUG] @injection.py:65 - Returning callable provider for feature PRODUCT_DATE_RANGE_CALCULATOR: <class 'subscription_manager.validity.ValidProductDateRangeCalculator'> 2013-04-02 10:41:38,717 [DEBUG] @injection.py:68 - Returning instance for feature IDENTITY 2013-04-02 10:41:38,718 [DEBUG] @injection.py:65 - Returning callable provider for feature PROD_STATUS_CACHE: <class 'subscription_manager.cache.ProductStatusCache'> 2013-04-02 10:41:38,718 [DEBUG] @connection.py:394 - Loading CA PEM certificates from: /etc/rhsm/ca/ 2013-04-02 10:41:38,719 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp2.pem' 2013-04-02 10:41:38,719 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/jmolet-cp1.pem' 2013-04-02 10:41:38,720 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem' 2013-04-02 10:41:38,721 [DEBUG] @connection.py:376 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem' 2013-04-02 10:41:38,722 [DEBUG] @connection.py:415 - Making request: GET /candlepin/consumers/b85c4eb1-058e-42ad-89a2-d976c2575d4f 2013-04-02 10:41:38,727 [ERROR] @cache.py:224 - [Errno -2] Name or service not known Traceback (most recent call last): File "/usr/share/rhsm/subscription_manager/cache.py", line 212, in load_status self._sync_with_server(uep, uuid) File "/usr/share/rhsm/subscription_manager/cache.py", line 256, in _sync_with_server consumer_data = uep.getConsumer(uuid) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 731, in getConsumer return self.conn.request_get(method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 481, in request_get File "/usr/share/rhsm/subscription_manager/cache.py", line 256, in _sync_with_server consumer_data = uep.getConsumer(uuid) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 731, in getConsumer return self.conn.request_get(method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 481, in request_get return self._request("GET", method) File "/usr/lib64/python2.6/site-packages/rhsm/connection.py", line 422, in _request conn.request(request_type, handler, body=body, headers=headers) File "/usr/lib64/python2.6/httplib.py", line 914, in request conn.request(request_type, handler, body=body, headers=headers) File "/usr/lib64/python2.6/httplib.py", line 914, in request self._send_request(method, url, body, headers) File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request self.endheaders() self.endheaders() File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders self._send_output() File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output self._send_output() File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output self.send(msg) File "/usr/lib64/python2.6/httplib.py", line 739, in send self.connect() File "/usr/lib64/python2.6/httplib.py", line 739, in send self.connect() File "/usr/lib64/python2.6/site-packages/M2Crypto/httpslib.py", line 51, in connect socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM): gaierror: [Errno -2] Name or service not known socket.getaddrinfo(self.host, self.port, 0, socket.SOCK_STREAM): gaierror: [Errno -2] Name or service not known 2013-04-02 10:41:38,728 [ERROR] @cache.py:226 - Server unreachable, registered, but no cache exists. 2013-04-02 10:41:38,728 [ERROR] @subscription-manager-gui:183 - [Errno -2] Name or service not known Traceback (most recent call last): File "/usr/sbin/subscription-manager-gui", line 166, in <module> main = managergui.MainWindow(auto_launch_registration=options.register) File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 212, in __init__ prod_dir=self.product_dir) File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 108, in __init__ self.update_products() File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 154, in update_products self.backend.uep) File "/usr/share/rhsm/subscription_manager/injection.py", line 83, in require return FEATURES.require(feature, *args, **kwargs) File "/usr/share/rhsm/subscription_manager/injection.py", line 66, in require return provider(*args, **kwargs) File "/usr/share/rhsm/subscription_manager/validity.py", line 32, in __init__ self.uep, self.identity.uuid) File "/usr/share/rhsm/subscription_manager/cache.py", line 227, in load_status raise ex gaierror: [Errno -2] Name or service not known Expected results: The gui launches without traceback. Additional info:
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.
https://bugzilla.redhat.com/show_bug.cgi?id=958236
*** Bug 958236 has been marked as a duplicate of this bug. ***
*** Bug 927875 has been marked as a duplicate of this bug. ***
We can arrive at the same issue by forcibly expiring certificate Bug 958236 or by improting invalid certificate Bug 927875.
This appears to be fixed in the current version of subscription manager (1.8.9-1.git.0.3aae03b.fc18)
Version: rpm -qa | egrep "subscription-manager|python-rhsm" subscription-manager-migration-data-1.11.3.1-1.git.1.78afd75.el5 subscription-manager-migration-1.8.10-1.git.1.b44c4b1.el5 python-rhsm-1.8.12-1.git.0.d747a65.el5 subscription-manager-firstboot-1.8.10-1.git.1.b44c4b1.el5 subscription-manager-1.8.10-1.git.1.b44c4b1.el5 subscription-manager-gui-1.8.10-1.git.1.b44c4b1.el5 Steps: 1. subscription-manager clean 2. subscription-manager register 3. change your 'hostname' in rhsm.conf to an invalid host or otherwise make your candlepin server unreachable (like stopping tomcat) 4. start the gui Actual Result: # subscription-manager-gui (subscription-manager-gui:3591): libglade-WARNING **: unknown property `has_tooltip' for class `GtkButton' (subscription-manager-gui:3591): libglade-WARNING **: unknown property `has_tooltip' for class `GtkEventBox' (-2, 'Name or service not known') Expected Result: Subscription Manager GUI hould open Additional Information: /var/log/rhsm/rhsm.log 2013-06-05 15:54:28,731 [ERROR] @cache.py:230 - Server unreachable, registered, but no cache exists. 2013-06-05 15:54:28,732 [ERROR] @subscription-manager-gui:183 - (-2, 'Name or service not known') Traceback (most recent call last): File "/usr/sbin/subscription-manager-gui", line 166, in ? main = managergui.MainWindow(auto_launch_registration=options.register) File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 221, in __init__ prod_dir=self.product_dir) File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 115, in __init__ self.update_products() File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 163, in update_products self.backend.uep) File "/usr/share/rhsm/subscription_manager/injection.py", line 83, in require return FEATURES.require(feature, *args, **kwargs) File "/usr/share/rhsm/subscription_manager/injection.py", line 66, in require return provider(*args, **kwargs) File "/usr/share/rhsm/subscription_manager/validity.py", line 32, in __init__ self.prod_status = self.prod_status_cache.load_status( File "/usr/share/rhsm/subscription_manager/cache.py", line 231, in load_status raise ex gaierror: (-2, 'Name or service not known') Moving to NEW
commit ecf54577c07770afd9b98fe17b1e83512069b3eb Author: ckozak <ckozak> Date: Thu Jun 6 08:55:55 2013 -0400 947485: System 'disconnected' if no cache and disconnected
Version: # rpm -qa | egrep "subscription-manager|python-rhsm" subscription-manager-gui-1.8.11-1.el5 subscription-manager-migration-data-1.11.3.1-1.git.1.78afd75.el5 python-rhsm-1.8.12-1.el5 python-rhsm-debuginfo-1.8.12-1.el5 subscription-manager-1.8.11-1.el5 subscription-manager-debuginfo-1.8.11-1.el5 subscription-manager-firstboot-1.8.11-1.el5 subscription-manager-migration-1.8.11-1.el5 # cat /etc/rhsm/rhsm.conf | grep hostname # Server hostname: hostname = blah.com proxy_hostname = subscription-manager opens successfully VERIFIED against brew
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. http://rhn.redhat.com/errata/RHBA-2013-1332.html