On instance build error, instance status should not be changed to SHUTOFF
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Wishlist
|
Titan |
Bug Description
If a build error occurs that causes an exception, the state of the VM ends up bein set to shutoff from this action in compute:
2011-07-14 18:15:34,448 INFO nova.compute.
The state of whether or not the instance is running should be independent of the status of the build of the VM. If the VM goes to error state, it should report back that the instance is now in error state. Changing the state to ShutOff because the instance isn't built yet does not properly reflect the state of the VM. I've also noticed that long running builds will sometimes be set to shut off from build and then they later go active.
Running rev 1271.
Related branches
- Vish Ishaya (community): Approve
- Brian Waldon (community): Approve
-
Diff: 2339 lines (+849/-460)20 files modifiednova/api/ec2/cloud.py (+38/-12)
nova/api/openstack/common.py (+54/-28)
nova/api/openstack/servers.py (+9/-13)
nova/api/openstack/views/servers.py (+4/-9)
nova/compute/api.py (+90/-28)
nova/compute/manager.py (+250/-225)
nova/compute/task_states.py (+59/-0)
nova/compute/vm_states.py (+39/-0)
nova/db/sqlalchemy/api.py (+4/-16)
nova/db/sqlalchemy/migrate_repo/versions/044_update_instance_states.py (+138/-0)
nova/db/sqlalchemy/models.py (+3/-13)
nova/exception.py (+1/-1)
nova/scheduler/driver.py (+4/-6)
nova/tests/api/openstack/test_server_actions.py (+22/-33)
nova/tests/api/openstack/test_servers.py (+67/-38)
nova/tests/integrated/test_servers.py (+23/-11)
nova/tests/scheduler/test_scheduler.py (+9/-4)
nova/tests/test_cloud.py (+10/-5)
nova/tests/test_compute.py (+21/-17)
nova/tests/vmwareapi/db_fakes.py (+4/-1)
Changed in nova: | |
assignee: | nobody → Titan (rackspace-titan) |
status: | Confirmed → In Progress |
Changed in nova: | |
status: | In Progress → Fix Committed |
Changed in nova: | |
milestone: | none → diablo-rbp |
Changed in nova: | |
milestone: | diablo-rbp → 2011.3 |
status: | Fix Committed → Fix Released |
Hi Ant,
I think this is caused by the poll_instance_ states function in the nova compute manager.
---
Also, This is one of many status transition issues I've noticed. I started a list on the wiki here:
http:// wiki.openstack. org/status_ transition_ issues
My conclusion was that the status columns are a bit overloaded and got the feeling we might actually benefit from a blueprint or something to address some of the status tracking issues across the board. As they seem to be rather widespread I wasn't sure filing tickets on each issue was the way to go about fixing these...