yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #68452
[Bug 1721670] Re: Build notification in conductor fails to send due to InstanceNotFound
Reviewed: https://review.openstack.org/509967
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=54cf9f5a90d745896d133669e6d1260e6adee51b
Submitter: Jenkins
Branch: master
commit 54cf9f5a90d745896d133669e6d1260e6adee51b
Author: melanie witt <melwittt@xxxxxxxxx>
Date: Thu Oct 5 23:55:58 2017 +0000
Target context for build notification in conductor
When sending notifications about an instance, it's possible the
notification payload will have attributes not already loaded on
the instance. In this case, a lazy-load will happen and if the
load method needs to lookup the instance (example: in the
_check_instance_exists_in_project method in the DB layer), the
InstanceNotFound exception will be raised and the notification
will fail to be sent.
This targets the instance context to the instance's cell when
calling the send notification method.
Closes-Bug: #1721670
Change-Id: I6b9eb120b6e7fcbf919a3791afe2d1f6a7bd3b60
** 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/1721670
Title:
Build notification in conductor fails to send due to InstanceNotFound
Status in OpenStack Compute (nova):
Fix Released
Bug description:
I found this issue while working on improving the CellDatabases
fixture by defaulting untargeted DB access to 'cell0' instead of
'cell1'.
While building an instance in conductor, it sends a notification about
the changed state using notifications.send_update_with_states. In
notifications.send_update_with_states, one of the arguments is an
Instance and if an attribute needs to be lazy-loaded, (example: tags,
as part of the InstanceUpdatePayload) and the load method contains a
_check_instance_exists_in_project call in the DB layer,
InstanceNotFound is raised at that point because the context wasn't
targeted to the instance's cell.
We need to target the context in case the notification call needs to
load something from the instance's cell database.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1721670/+subscriptions
References