Resource reservation isn't rolled back properly for certain failures during Instance Create
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Andy McCrae | ||
Folsom |
Fix Released
|
Medium
|
Andy McCrae | ||
nova (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Quantal |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The resources are reserved at the start of the instance creation, but are never rolled back/removed if certain exceptions occur, for example if you pass an incorrect network ID (404), or the image isn't currently 'active' in glance, the reservation counter will increase and not be removed.
You can recreate this pretty simply by performing the following (assuming that net-id below isn't a legitimate net-id on your setup):
nova boot --flavor 1 --image cirros-
Rerunning the above command until you hit your quota limit will begin returning "Quota exceeded for instances: Requested 1, but already used 10 of 10 instances" - although there are no running instances. The nova.quota_usages table will show the reservation counter increasing.
This works for some exceptions where it is explicitly rolled back, but essentially it the rollback seems inconsistent.
Related branches
- Openstack Ubuntu Testers: Pending requested
-
Diff: 121 lines (+100/-4)1 file modifieddebian/changelog (+100/-4)
CVE References
Changed in nova: | |
assignee: | nobody → Andy McCrae (andrew-mccrae) |
Changed in nova: | |
importance: | Undecided → Medium |
tags: | added: folsom-backport-potential |
Changed in nova: | |
milestone: | none → grizzly-1 |
status: | Fix Committed → Fix Released |
tags: | removed: folsom-backport-potential |
Changed in nova (Ubuntu): | |
status: | New → Fix Released |
Changed in nova (Ubuntu Quantal): | |
status: | New → Confirmed |
tags: | removed: in-stable-folsom |
Changed in nova: | |
milestone: | grizzly-1 → 2013.1 |
Fix proposed to branch: master /review. openstack. org/14289
Review: https:/