yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #72229
[Bug 1760303] Re: ComputeManager.cleanup_host fails when there are waiting events: ValueError: Field value network-vif-plugged-ce531f90-199f-48c0-816c is invalid
Reviewed: https://review.openstack.org/558059
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=d9369d034cb0694def2510885ddfb9b039cbad49
Submitter: Zuul
Branch: master
commit d9369d034cb0694def2510885ddfb9b039cbad49
Author: Matt Riedemann <mriedem.os@xxxxxxxxx>
Date: Sat Mar 31 10:28:29 2018 -0400
Fix cancel_all_events event name parsing
The cancel_all_events function was incorrectly assuming
that event tags didn't have dashes in them, but they all
do since they are either port or volume IDs, which are UUIDs.
Instead of just storing our event data indexed by the composite
event key, we should just store the name and tag distinctly so
that there is no question about how to dissect the two from the
key later. This is all internal record-keeping inside of the
compute manager, so we can change it to whatever we want.
This includes a slight change to the internal virtapi interface
for wait_for_instance_event(), which removes the ability to
pass composite event keys as strings instead of (name, tag)
tuples. In reality, none of the virt code was using the key string
format, so this just cleans up a few tests that were. It makes
that interface less ambiguous, which is good anyway.
Change-Id: I15f041e820c2dabe82e8e25bf77f9cc86330a76a
Closes-Bug: #1760303
** 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/1760303
Title:
ComputeManager.cleanup_host fails when there are waiting events:
ValueError: Field value network-vif-plugged-ce531f90-199f-48c0-816c is
invalid
Status in OpenStack Compute (nova):
Fix Released
Status in OpenStack Compute (nova) ocata series:
Triaged
Status in OpenStack Compute (nova) pike series:
Triaged
Status in OpenStack Compute (nova) queens series:
Triaged
Bug description:
The parsing in cancel_all_events() fails to account for names such as:
network-vif-plugged-ce531f90-199f-48c0-816c
https://github.com/openstack/nova/blob/167023b5074c7cb241b33767d76a116ec95d652c/nova/compute/manager.py#L406
Which can be constructed when registering the event using a tuple of
the event name and tag:
https://github.com/openstack/nova/blob/167023b5074c7cb241b33767d76a116ec95d652c/nova/compute/manager.py#L460-L463
https://github.com/openstack/nova/blob/167023b5074c7cb241b33767d76a116ec95d652c/nova/objects/external_event.py#L51
So we almost need something like that make_key function but more like
parse_key where using the known EVENT_NAMES we can split the event
name to get the name and tag.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1760303/+subscriptions
References