26da4418a9
When reverting a cross-cell resize, conductor will: 1. clean up the destination host 2. set instance.hidden=True and destroy the instance in the target cell database 3. finish the revert on the source host which will revert the allocations on the source host held by the migration record so the instance will hold those again and drop the allocations against the dest host which were held by the instance. If the ResourceTracker.update_available_resource periodic task runs between steps 2 and 3 it could see that the instance is deleted from the target cell but there are still allocations held by it and delete them. Step 3 is what handles deleting those allocations for the destination node, so we want to leave it that way and take the ResourceTracker out of the flow. This change simply checks the instance.hidden value on the deleted instance and if hidden=True, assumes the allocations will be cleaned up elsehwere (finish_revert_snapshot_based_resize_at_source). Ultimately this is probably not something we *have* to have since finish_revert_snapshot_based_resize_at_source is going to drop the destination node allocations anyway, but it is good to keep clear which actor is doing what in this process. Part of blueprint cross-cell-resize Change-Id: Idb82b056c39fd167864cadd205d624cb87cbe9cb |
||
---|---|---|
.. | ||
monitors | ||
__init__.py | ||
eventlet_utils.py | ||
fake_resource_tracker.py | ||
test_claims.py | ||
test_compute_api.py | ||
test_compute_mgr.py | ||
test_compute_utils.py | ||
test_compute_xen.py | ||
test_compute.py | ||
test_flavors.py | ||
test_host_api.py | ||
test_instance_list.py | ||
test_keypairs.py | ||
test_multi_cell_list.py | ||
test_provider_tree.py | ||
test_resource_tracker.py | ||
test_rpcapi.py | ||
test_shelve.py | ||
test_stats.py | ||
test_virtapi.py |