After FFU from 16.2 to 17.1, instances cannot start due to "NotImplementedError: Cannot load 'pcpuset' in the base class" error
Issue
After FFU from 16.2 to 17.1, some instances cannot start with NotImplementedError: Cannot load 'pcpuset' in the base class
error.
There is _get_cpu_numa_config_from_instance
function in the traceback.
Note: If there is not _get_cpu_numa_config_from_instance
function but there is _numa_fit_instance_cell
function, please refer to After FFU from 16.2 to 17.1, migration and unshelving are failing with "NotImplementedError: Cannot load 'pcpuset' in the base class" instead.
[req-aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - default default] Exception during message handling: NotImplementedError: Cannot load 'pcpuset' in the base class
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/oslo_messaging/rpc/server.py", line 165, in _process_incoming
res = self.dispatcher.dispatch(message)
File "/usr/lib/python3.9/site-packages/oslo_messaging/rpc/dispatcher.py", line 309, in dispatch
return self._do_dispatch(endpoint, method, ctxt, args)
File "/usr/lib/python3.9/site-packages/oslo_messaging/rpc/dispatcher.py", line 229, in _do_dispatch
result = func(ctxt, **new_args)
File "/usr/lib/python3.9/site-packages/nova/exception_wrapper.py", line 71, in wrapped
_emit_versioned_exception_notification(
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 227, in __exit__
self.force_reraise()
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
raise self.value
File "/usr/lib/python3.9/site-packages/nova/exception_wrapper.py", line 63, in wrapped
return f(self, context, *args, **kw)
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 185, in decorated_function
LOG.warning("Failed to revert task state for instance. "
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 227, in __exit__
self.force_reraise()
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
raise self.value
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 156, in decorated_function
return function(self, context, *args, **kwargs)
File "/usr/lib/python3.9/site-packages/nova/compute/utils.py", line 1448, in decorated_function
return function(self, context, *args, **kwargs)
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 213, in decorated_function
compute_utils.add_instance_fault_from_exc(context,
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 227, in __exit__
self.force_reraise()
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
raise self.value
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 202, in decorated_function
return function(self, context, *args, **kwargs)
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 3861, in reboot_instance
do_reboot_instance(context, instance, block_device_info, reboot_type)
File "/usr/lib/python3.9/site-packages/oslo_concurrency/lockutils.py", line 360, in inner
return f(*args, **kwargs)
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 3859, in do_reboot_instance
self._reboot_instance(context, instance, block_device_info,
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 3953, in _reboot_instance
self._set_instance_obj_error_state(instance)
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 227, in __exit__
self.force_reraise()
File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
raise self.value
File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 3923, in _reboot_instance
self.driver.reboot(context, instance,
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 3770, in reboot
return self._hard_reboot(context, instance, network_info,
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 3860, in _hard_reboot
xml = self._get_guest_xml(context, instance, network_info, disk_info,
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 7182, in _get_guest_xml
conf = self._get_guest_config(instance, network_info, image_meta,
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 6737, in _get_guest_config
guest_numa_config = self._get_guest_numa_config(
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 5776, in _get_guest_numa_config
guest_cpu_numa_config = self._get_cpu_numa_config_from_instance(
File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 5610, in _get_cpu_numa_config_from_instance
guest_cell.cpus = instance_cell.total_cpus
File "/usr/lib/python3.9/site-packages/nova/objects/instance_numa.py", line 101, in total_cpus
return self.cpuset | self.pcpuset
File "/usr/lib/python3.9/site-packages/oslo_versionedobjects/base.py", line 67, in getter
self.obj_load_attr(name)
File "/usr/lib/python3.9/site-packages/oslo_versionedobjects/base.py", line 600, in obj_load_attr
raise NotImplementedError(
NotImplementedError: Cannot load 'pcpuset' in the base class
Environment
Red Hat OpenStack Platform 17.1.3 or earlier
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.