nova/nova/objects
melanie witt 16e163053c Don't generate service UUID for deleted services
In Pike, we added a UUID field to services and during an upgrade from
Ocata => Pike, when instances are accessed joined with their associated
services, we generate a UUID for the services on-the-fly.

This causes a problem in the scenario where an operator upgrades their
cluster and has old, deleted services with hostnames matching existing
services associated with instances. When we go to generate the service
UUID for the old, deleted service, we hit a ServiceTooOld exception.

This addresses the problem by not bothering to generate a UUID for a
deleted service. One alternative would be to exclude deleted services
when we join the 'instances' and 'services' tables, but I'm not sure
whether that approach might cause unintended effects where service
information that used to be viewable for instances becomes hidden.

Closes-Bug: #1778305
Closes-Bug: #1764556

Change-Id: I347096a527c257075cefe7b81210622f6cd87daf
2019-07-30 18:48:51 +00:00
..
__init__.py network: Always retrieve network information if available 2018-07-03 16:50:06 +01:00
agent.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
aggregate.py Transform aggregate.update_prop notification 2018-07-15 23:36:31 +09:00
bandwidth_usage.py Stop handling 'update_cells' on 'BandwidthUsage.create' 2019-05-20 10:29:16 +01:00
base.py Delete the obj_as_admin context manager 2019-03-05 16:54:05 -05:00
block_device.py Remove 'bdm_(update_or_create|destroy)_at_top' 2019-04-16 18:26:17 +01:00
build_request.py Merge "Drop delete_build_requests_with_no_instance_uuid online migration" 2019-07-23 22:43:45 +00:00
cell_mapping.py Fix using template cell urls with nova-manage 2019-01-17 14:18:14 -08:00
compute_node.py hacking: Resolve W503 (line break occurred before a binary operator) 2019-06-24 14:24:06 -05:00
console_auth_token.py Fix cleaning up console tokens 2019-07-19 11:36:15 +09:00
diagnostics.py Added nova objects for intance diagnostics 2017-05-30 00:39:44 +04:00
dns_domain.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
ec2.py objects: Remove unused ec2 objects 2019-07-10 16:15:20 +01:00
external_event.py Add ability to signal and perform online volume size change 2017-07-12 11:53:20 -04:00
fields.py Merge "Remove nova-consoleauth" 2019-07-24 19:08:10 +00:00
fixed_ip.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
flavor.py Merge "Remove old flavor_create db api method" 2018-03-20 18:11:06 +00:00
floating_ip.py Use nova.db.api directly 2018-07-10 14:56:27 +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 hacking: Resolve W503 (line break occurred before a binary operator) 2019-06-24 14:24:06 -05:00
instance.py Merge "Optimize SchedulerReportClient.delete_resource_provider" 2019-07-20 02:17:33 +00:00
instance_action.py Use nova.db.api directly 2018-07-10 14:56:27 +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 hacking: Resolve W503 (line break occurred before a binary operator) 2019-06-24 14:24:06 -05:00
instance_numa_topology.py hacking: Resolve W503 (line break occurred before a binary operator) 2019-06-24 14:24:06 -05:00
instance_pci_requests.py [FUP] Follow-up patch for SR-IOV live migration 2019-07-02 13:52:01 -05:00
keypair.py Drop migrate_keypairs_to_api_db data migration 2019-04-03 11:42:48 -04:00
migrate_data.py compute: Use source_bdms to reset attachment_ids during LM rollback 2019-07-24 15:35:51 +00:00
migration.py Revert resize: wait for events according to hybrid plug 2019-07-10 19:56:31 -04:00
migration_context.py Move get_pci_mapping_for_migration to MigrationContext 2019-05-19 12:41:00 +03:00
monitor_metric.py Fix MonitorMetric obj_make_compatible 2016-09-12 14:10:41 +00:00
network.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
network_metadata.py Assorted cleanups from numa-aware-vswitches series 2018-07-27 09:49:12 -07:00
network_request.py Merge "Remove DictCompat from NetworkRequest" 2016-06-30 10:23:36 +00:00
numa.py Fix overcommit for NUMA-based instances 2019-01-16 11:50:14 +00:00
pci_device.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
pci_device_pool.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
quotas.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
request_spec.py Merge "Correct the comment of RequestSpec's network_metadata" 2019-07-08 11:56:17 +00:00
security_group.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
security_group_rule.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
selection.py Move the to_dict() method to the Selection object 2017-12-07 15:01:09 +00:00
service.py Don't generate service UUID for deleted services 2019-07-30 18:48:51 +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 cleanup NovaObjectDictCompat from virt_cpu_topology 2015-08-05 08:56:30 +05:30
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