"create" instance action not created when instance is buried in cell0
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Low
|
Matt Riedemann | ||
Ocata |
Triaged
|
Low
|
Unassigned | ||
Pike |
Triaged
|
Low
|
Unassigned | ||
Queens |
Triaged
|
Low
|
Unassigned | ||
Rocky |
Triaged
|
Low
|
Qiu Fossen | ||
Stein |
Fix Released
|
Low
|
Stephen Finucane | ||
Train |
Fix Released
|
Low
|
Matt Riedemann |
Bug Description
Before cell0 was introduced the API would create the "create" instance action for each instance in the nova cell database before casting off to conductor to do scheduling:
https:/
Note that conductor failed to "complete" the action with a failure event:
https:/
But at least the action was created.
Since then, with cell0, if scheduling fails the instance is buried in the cell0 database but no instance action is created. To illustrate, I disabled the single nova-compute service on my devstack host and created a server which failed with NoValidHost:
$ openstack server show build-fail1 -f value -c fault
{u'message': u'No valid host was found. ', u'code': 500, u'created': u'2019-
When listing instance actions I expected to see a "create" action but there were none:
$ nova instance-
+------
| Action | Request_ID | Message | Start_Time | Updated_At |
+------
+------
This is because the "create" action is only created when the instance is scheduled to a specific cell:
https:/
Solution:
The ComputeTaskMana
This goes back to Ocata: https:/
Note that currently stable/rocky is the oldest non-extended- maintenance branch upstream so it might not be worth fixing this on branches older than Rocky upstream given how latent this bug is.