Current Series Release Notes¶
33.0.0-66¶
New Features¶
The
nova-manageandnova-statusCLI commands now support native threading mode via theOS_NOVA_DISABLE_EVENTLET_PATCHINGenvironment variable. This allows CLI commands that perform cross-cell operations using scatter-gather patterns (e.g.,nova-manage cell_v2 list_hosts,nova-status upgrade check,nova-manage placement heal_allocations) to benefit from concurrent execution with native threading. For more details, see the concurrency guide: https://docs.openstack.org/nova/latest/admin/concurrency.html
The default concurrency mode is now switched from eventlet to native threading for nova-conductor, and nova-compute services. The concurrency mode can still be switched back to eventlet if needed per service. Please read the concurrency guide for more details.
The websocketproxy (
nova-novncproxy,nova-serialproxy, andnova-spicehtml5proxy) can now be run in native threading mode instead of with eventlet. This is an experimental feature that is disabled by default. Please read theconcurrencyguide for more details: https://docs.openstack.org/nova/latest/admin/concurrency.html
Upgrade Notes¶
Two indexes were added to the
migrationstable:migrations_by_src_host_nodes_and_status_idxandmigrations_by_dest_host_nodes_and_status_idx. These indexes optimize migration lookups for a specific compute node by source or destination host/node and are used by the_cleanup_incomplete_migrationsperiodic task (run every 5 minutes by default on each compute service). In environments with large migration tables, this significantly reduces query latency and improves the nova-conductor performance. See bug 2121465 for details.
Python 3.10 support has been dropped. The minimum version of Python now supported by nova is Python 3.11.
When you are upgrading to 2026.2 (Hibiscus) or newer the default configuration of nova-conductor, and nova-compute services change to run these services with native threading mode by default instead of the legacy eventlet mode. We recommend to decouple the upgrade from the concurrency mode change to reduce the risk of issues. To do that either test the native threading mode of these services already in 2026.1 (Gazpacho) or ensure that your service configuration is explicitly using the eventlet mode before you upgrade and only change to threading mode after the upgrade was successful. Please read the concurrency guide for more details on how to configure the mode.
Bug Fixes¶
Fixes an bug where deleting a volume backed server during the creation phase(building) could leave its cinder volume attachment behind. We will now check for already created BDMs during this deletion phase and will call/notify cinder for deleting these attachments.
Bug #2108974: Fix keypairs lost during cross-cell resize. When an instance was resized across cells, the keypairs stored in the
instance_extratable were not loaded from the source cell before cloning the instance to the destination cell. As a result, the keypairs column was written as NULL in the target cell database, effectively losing the server’s keypair data after confirming the resize.
Bug #2144660: Fix NUMA cell sorting for non-PCI VMs with pack strategy. When using the
packNUMA cell allocation strategy, the compute claim was not passingpci_statstonuma_fit_instance_to_hostfor VMs without PCI requests. This caused the PCI-aware NUMA cell sort to be skipped, allowing non-PCI VMs to land on NUMA nodes holding PCI devices instead of being steered away from them.
[bug 2123895] Fixed service endpoint discovery with
[oslo_limit]configuration when unified limits quotas are enabled.
Other Notes¶
Optimized the discovery of PCI passthrough devices and added caching. Previously libvirt was called 3 times per device, this has been reduced to a single call.
Note
Separately, please be aware of an upstream bug in libvirt (< 10.5) that caused an leak of GSource objects, which slowed down queries over time. https://gitlab.com/libvirt/libvirt/-/commit/98f1cf88fa7e0f992d93f376418fbfb3996a9690