Local delete emits delete.end notification without delete_at
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
In cases where Nova falls back to doing a local delete at the API (compute host down), it is possible for the delete.end notification to get emitted without deleted_at being set.
Steps to reproduce (with notifications enabled):
1) Create instance and wait for it to go active
2) Take compute host for the instance down
3) Delete instance
4) Observe compute.
This seems to be happening because the Instance.destroy() function does not update the instance with the latest state from the database after calling db.instance_
Changed in nova: | |
milestone: | none → icehouse-2 |
Changed in nova: | |
status: | Fix Committed → Fix Released |
Changed in nova: | |
milestone: | icehouse-2 → 2014.1 |
Reviewed: https:/ /review. openstack. org/56264 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=1167a0f808d d746875be50f31d 7ebc56f79d45d6
Committed: https:/
Submitter: Jenkins
Branch: master
commit 1167a0f808dd746 875be50f31d7ebc 56f79d45d6
Author: Andrew Melton <email address hidden>
Date: Wed Nov 27 13:57:37 2013 -0500
Update Instance from database after destroy
In cases where Nova falls back to simply locally deleting an
instance, the Instance object was not updated with the deleted_at
generated by the database implementation. Due to this, the
notification emitted to signify that the delete finished was
getting emitted without a deleted_at value.
This change uses the result from the instance_destroy call to instance. delete. end notification is emitted
update the Instance object with the latest state from the database.
Thus, the compute.
with the proper deleted_at value.
Closes-Bug: #1250206 b8ea901c6f81319 1a0ce1058e8
Change-Id: I55ed37cf89dd6e