Live-migration failing with error NotImplementedError: Cannot load 'old_resources' in the base class
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
In Progress
|
Undecided
|
Mitya Eremeev |
Bug Description
Steps to reproduce
==================
While live-migrating the instances from the compute few instances failed with error
NotImplementedE
Actual result
=============
the state of failed instance:
$ openstack server show 6f01e3fe-
+------
| Field | Value |
+------
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-STS:vm_state | error |
| OS-SRV-
| OS-SRV-
| accessIPv4 | |
| accessIPv6 | |
| config_drive | True |
| created | 2021-07-
| fault | {'code': 500, 'created': '2021-12-
| | packages/
| | packages/
| | packages/
| | packages/
| | obj_load_attr\n _("Cannot load \'%s\' in the base class") % attrname)
| status | ERROR |
| updated | 2021-12-
| user_id | 1fcd7470ddce40b
| volumes_attached | |
+------
$ nova migration-list --host <HOST> --changes-since 2021-12-03 |grep 6f01e3fe-
| 21789 | bb1aaaf8-
VM’s that failed to live-migrate with mentioned error have their disk copied successfully to the destination compute and virsh list shows VM is running on the destination compute but the openstack server show still shows the VM is on source compute.
If we hard reboot the VM then the VM shows as running on both source and destination computes.
RCA
---
"Old_resources" was introduced in Train
https:/
DB migration was performed
MariaDB [nova]> describe instance_extra;
+------
| Field | Type | Null | Key | Default | Extra |
+------
| created_at | datetime | YES | | NULL | |
| updated_at | datetime | YES | | NULL | |
| deleted_at | datetime | YES | | NULL | |
| deleted | int(11) | YES | | NULL | |
| id | int(11) | NO | PRI | NULL | auto_increment |
| instance_uuid | varchar(36) | NO | MUL | NULL | |
| numa_topology | text | YES | | NULL | |
| pci_requests | text | YES | | NULL | |
| flavor | text | YES | | NULL | |
| vcpu_model | text | YES | | NULL | |
| migration_context | text | YES | | NULL | |
| keypairs | text | YES | | NULL | |
| device_metadata | text | YES | | NULL | |
| trusted_certs | text | YES | | NULL | |
| vpmems | text | YES | | NULL | |
| resources | text | YES | | NULL | |
+------
2021-12-03 11:19:07.691 1117 INFO nova.virt.
2021-12-03 11:19:07.985 1117 INFO nova.virt.
2021-12-03 11:19:08.047 1117 WARNING nova.compute.
2021-12-03 11:19:08.257 1117 WARNING nova.compute.
2021-12-03 11:19:39.576 1117 INFO nova.virt.
2021-12-03 11:20:10.617 1117 INFO nova.virt.
2021-12-03 11:20:32.676 1117 INFO nova.compute.
2021-12-03 11:20:32.800 1117 INFO nova.compute.
2021-12-03 11:20:33.775 1117 INFO nova.virt.
2021-12-03 11:20:33.776 1117 INFO nova.compute.
2021-12-03 11:20:37.099 1117 WARNING nova.compute.
2021-12-03 11:20:38.506 1117 WARNING nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
2021-12-03 11:20:38.506 1117 ERROR nova.virt.
So root cause was not found.
We can add some check if migration context has member "old_resources"
Environment
===========
release: Victoria
hypervisor: Libvirt + KVM
storage: local folders
networking: Neutron
Changed in nova: | |
assignee: | nobody → Mitya Eremeev (mitos) |
status: | New → In Progress |
Fix proposed to branch: master /review. opendev. org/c/openstack /nova/+ /821947
Review: https:/