nova/nova/objects
LuyaoZhong 255b3f2f91 Track error migrations in resource tracker
If rollback_live_migration failed, the migration status is set to
'error', and there might me some resource not be cleaned up like vpmem
since rollback is not completed. So we propose to track those 'error'
migrations in resource tracker until they are cleaned up by periodic
task '_cleanup_incomplete_migrations'.

So if rollback_live_migration succeeds, we need to set the migration
status to 'failed' which will not be tracked in resource tracker. The
'failed' status is already used for resize to indicated a migration
finishing the cleanup.

'_cleanup_incomplete_migrations' will also handle failed
rollback_live_migration cleanup except for failed resize/revert-resize.

Besides, we introduce a new 'cleanup_lingering_instance_resources' virt
driver interface to handle lingering instance resources cleanup
including vpmem cleanup and whatever we add in the future.

Change-Id: I422a907056543f9bf95acbffdd2658438febf801
Partially-Implements: blueprint vpmem-enhancement
2020-09-10 05:30:39 +00:00
..
__init__.py nova-net: Remove unused nova-network objects 2020-02-18 13:19:43 +00:00
agent.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
aggregate.py DB API changes to get non-matching aggregates from metadata 2019-09-12 16:56:32 -05:00
bandwidth_usage.py Stop handling 'update_cells' on 'BandwidthUsage.create' 2019-05-20 10:29:16 +01:00
base.py Make serialize_args handle exception messages safely 2020-03-21 06:08:11 +00:00
block_device.py Remove 'bdm_(update_or_create|destroy)_at_top' 2019-04-16 18:26:17 +01:00
build_request.py Fix listing deleted servers with a marker 2019-10-23 10:32:28 -04:00
cell_mapping.py Fix using template cell urls with nova-manage 2019-01-17 14:18:14 -08:00
compute_node.py objects: Add migrate-on-load behavior for legacy NUMA objects 2020-05-06 15:40:06 +01:00
console_auth_token.py Reduce scope of 'path' query parameter to noVNC consoles 2019-09-27 13:50:52 +00:00
diagnostics.py Add NovaEphemeralObject class for non-persistent objects 2020-01-14 08:13:18 -08:00
ec2.py ec2: Move ec2utils functions to their callers 2019-09-27 15:27:08 +01:00
external_event.py Define Cyborg ARQ binding notification event. 2020-03-01 13:52:51 -08:00
fields.py compute: Validate a BDMs disk_bus when provided 2020-07-29 16:05:48 +00:00
flavor.py Merge "Remove old flavor_create db api method" 2018-03-20 18:11:06 +00:00
host_mapping.py Warn for duplicate host mappings during discover_hosts 2019-06-13 17:18:16 +00:00
hv_spec.py objects: Move 'hv_type' to 'fields.HVType' 2016-11-25 16:19:43 +00:00
image_meta.py scheduler: Request vTPM trait based on flavor or image 2020-07-16 17:54:44 +01:00
instance.py Track error migrations in resource tracker 2020-09-10 05:30:39 +00:00
instance_action.py Store instance action event exc_val fault details 2020-03-21 06:08:34 +00:00
instance_fault.py Remove 'instance_fault_create_at_top' 2019-04-29 17:54:17 +01:00
instance_group.py Avoid unnecessary joins in InstanceGroup.get_hosts 2019-05-23 11:14:55 -04:00
instance_info_cache.py Remove 'instance_info_cache_update_at_top' 2019-04-29 17:55:41 +01:00
instance_mapping.py Raise InstanceMappingNotFound if StaleDataError is encountered 2020-06-24 20:29:44 +00:00
instance_numa.py objects: Introduce the 'CPUAllocationPolicy.MIXED' enum 2020-07-15 00:39:46 +08:00
instance_pci_requests.py Remove stale nested backport from InstancePCIRequests 2020-04-21 09:07:32 -07:00
keypair.py Drop migrate_keypairs_to_api_db data migration 2019-04-03 11:42:48 -04:00
migrate_data.py New objects for NUMA live migration 2019-09-12 17:34:34 -04:00
migration.py Track error migrations in resource tracker 2020-09-10 05:30:39 +00:00
migration_context.py Fix accumulated non-docs nits for cross-cell-resize series 2019-12-23 10:10:57 -05:00
monitor_metric.py Fix MonitorMetric obj_make_compatible 2016-09-12 14:10:41 +00:00
network_metadata.py Assorted cleanups from numa-aware-vswitches series 2018-07-27 09:49:12 -07:00
network_request.py nova-net: Kill it 2020-01-14 21:25:56 +00:00
numa.py objects: Add migrate-on-load behavior for legacy NUMA objects 2020-05-06 15:40:06 +01:00
pci_device.py Add NovaEphemeralObject class for non-persistent objects 2020-01-14 08:13:18 -08:00
pci_device_pool.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
quotas.py Merge "Add NovaEphemeralObject class for non-persistent objects" 2020-01-19 23:18:59 +00:00
request_spec.py Merge "Add NovaEphemeralObject class for non-persistent objects" 2020-01-19 23:18:59 +00:00
resource.py libvirt: Enable driver discovering PMEM namespaces 2019-09-13 08:50:35 +00:00
security_group.py nova-net: Add TODOs to remove security group-related objects 2020-01-08 13:54:12 +00:00
selection.py Add Selection.availability_zone field 2019-10-02 13:39:24 -04:00
service.py Cyborg evacuate support 2020-09-01 08:41:45 +00:00
tag.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
task_log.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
trusted_certs.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
vcpu_model.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virt_cpu_topology.py
virt_device_metadata.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virtual_interface.py Populate InstanceMapping.user_id during migrations and schedules 2019-03-08 19:01:25 -05:00
volume_usage.py Transform volume.usage notification 2018-10-09 06:28:11 +00:00