yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #60889
[Bug 1656075] Re: DiscoveryFailure when trying to get resource providers from the scheduler report client
Reviewed: https://review.openstack.org/422780
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=4dbc0ddc740881a409085feeca2a1771a9ea95f3
Submitter: Jenkins
Branch: master
commit 4dbc0ddc740881a409085feeca2a1771a9ea95f3
Author: Roman Dobosz <roman.dobosz@xxxxxxxxx>
Date: Thu Jan 19 18:26:45 2017 +0100
Prevent compute crash on discovery failure
Keystoneauth1 may crash during discovery of URL for placement API. This is
often happen on situation, when all services are started at once, compute will
first be up while keystone still not. This patch fixes this by catching
DiscoveyFailure as additional expected failures.
Closes-Bug: #1656075
Change-Id: I48aa6802286b408260b9d10f9d13860b44bd7d34
** Changed in: nova
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1656075
Title:
DiscoveryFailure when trying to get resource providers from the
scheduler report client
Status in OpenStack Compute (nova):
Fix Released
Status in OpenStack Compute (nova) newton series:
New
Bug description:
I noticed this in a TripleO job:
http://logs.openstack.org/04/419604/1/check/gate-puppet-openstack-
integration-4-scenario004-tempest-centos-7/5d95a8c/logs/nova/nova-
compute.txt.gz#_2017-01-12_18_53_43_459
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager [req-59098025-7c99-41b2-aaa9-0e5714770b3a - - - - -] Error updating resources for node centos-7-osic-cloud1-s3500-6631948.
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager Traceback (most recent call last):
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 6537, in update_available_resource_for_node
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager rt.update_available_resource(context, nodename)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 540, in update_available_resource
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self._update_available_resource(context, resources)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py", line 271, in inner
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return f(*args, **kwargs)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 564, in _update_available_resource
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self._init_compute_node(context, resources)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 451, in _init_compute_node
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self.scheduler_client.update_resource_stats(self.compute_node)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/__init__.py", line 60, in update_resource_stats
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self.reportclient.update_resource_stats(compute_node)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/__init__.py", line 37, in __run_method
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return getattr(self.instance, __name)(*args, **kwargs)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 476, in update_resource_stats
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager compute_node.hypervisor_hostname)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 296, in _ensure_resource_provider
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager rp = self._get_resource_provider(uuid)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 53, in wrapper
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return f(self, *a, **k)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 209, in _get_resource_provider
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager resp = self.get("/resource_providers/%s" % uuid)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 174, in get
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager endpoint_filter=self.ks_filter, raise_exc=False)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 710, in get
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return self.request(url, 'GET', **kwargs)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/positional/__init__.py", line 101, in inner
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return wrapped(*args, **kwargs)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 467, in request
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager auth_headers = self.get_auth_headers(auth)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 770, in get_auth_headers
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return auth.get_headers(self, **kwargs)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/plugin.py", line 90, in get_headers
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager token = self.get_token(session)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 90, in get_token
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager return self.get_access(session).auth_token
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 136, in get_access
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self.auth_ref = self.get_auth_ref(session)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py", line 196, in get_auth_ref
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager self._plugin = self._do_create_plugin(session)
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py", line 191, in _do_create_plugin
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager raise exceptions.DiscoveryFailure('Could not determine a suitable URL '
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager DiscoveryFailure: Could not determine a suitable URL for the plugin
2017-01-12 18:53:43.459 15495 ERROR nova.compute.manager
Looks like another type of keystoneauth1 exception that we're not
handling in the safe_connect() decorator. At some point we'll probably
just want to handle all KSA failures globally...
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1656075/+subscriptions
References