[SRU] API allows source compute service/node deletion while instances are pending a resize confirm/revert
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Matt Riedemann | ||
Queens |
Fix Committed
|
Low
|
Lee Yarwood | ||
Rocky |
Fix Committed
|
Medium
|
Matt Riedemann | ||
Stein |
Fix Committed
|
Medium
|
Matt Riedemann | ||
Train |
Fix Committed
|
Medium
|
Matt Riedemann | ||
Ubuntu Cloud Archive |
Invalid
|
Undecided
|
Unassigned | ||
Queens |
Won't Fix
|
Undecided
|
Unassigned | ||
nova (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Brett Milford |
Bug Description
[Impact]
* API will allow deleting a source compute service which has migration-based allocations for the source node resource provider and pending instance resizes involving the source node.
* Backporting the fix will improve application resilience in this case.
[Test Case]
1. create a server on host1
2. resize or cold migrate it to a dest host2
3. delete the compute service for host1
At this point the resource provider for host1 is orphaned.
4. try to confirm/revert the resize of the server which will fail because the compute node for host1 is gone and this results in the server going to ERROR status
[Where problems could occur]
* This change introduces an exception condition in the API and prevents the erroneous deletion of compute services which would result in orphaned state.
* As such we should expect to see altered behavior from the API as detailed in api-ref/
* If problems were to occur they would manifest in behavior that is different from both the original behavior of the API and the new behavior.
--- Original Description ---
This is split off from bug 1829479 which is about deleting a compute service which had servers evacuated from it which will orphan resource providers in placement.
A similar scenario is true where the API will allow deleting a source compute service which has migration-based allocations for the source node resource provider and pending instance resizes involving the source node. A simple scenario is:
1. create a server on host1
2. resize or cold migrate it to a dest host2
3. delete the compute service for host1
At this point the resource provider for host1 is orphaned.
4. try to confirm/revert the resize of the server which will fail because the compute node for host1 is gone and this results in the server going to ERROR status
Based on the discussion in this mailing list thread:
http://
We should probably have the DELETE /os-services/
Changed in nova: | |
status: | New → Triaged |
importance: | Undecided → Medium |
summary: |
- API allows source compute service/node deletion while instances are - pending a resize confirm/revert + [SRU] API allows source compute service/node deletion while instances + are pending a resize confirm/revert |
Changed in nova (Ubuntu Bionic): | |
status: | New → In Progress |
assignee: | nobody → Brett Milford (brettmilford) |
tags: | added: sru-needed sts |
Changed in cloud-archive: | |
status: | New → Fix Committed |
status: | Fix Committed → Fix Released |
Changed in nova (Ubuntu): | |
status: | New → Invalid |
Changed in cloud-archive: | |
status: | Fix Released → Invalid |
Changed in nova (Ubuntu Bionic): | |
status: | Fix Released → Invalid |
status: | Invalid → Fix Released |
Related fix proposed to branch: master /review. opendev. org/694351
Review: https:/