We are satisfied to announce the release of: nova 21.2.0: Cloud computing fabric controller This release is part of the ussuri stable release series. The source is available from: https://opendev.org/openstack/nova Download the package from: https://tarballs.openstack.org/nova/ Please report issues through: https://bugs.launchpad.net/nova/+bugs For more details, please see below. 21.2.0 ^^^^^^ Upgrade Notes ************* * Nova services only support old computes if the compute is not older than the previous major nova release. From now on nova services will emit a warning at startup if the deployment contains too old compute services. From the 23.0.0 (Wallaby) release nova services will refuse to start if the deployment contains too old compute services to prevent compatibility issues. Bug Fixes ********* * In the Rocky (18.0.0) release support was added to nova to use neutron's multiple port binding feature when the binding-extended API extension is available. In the Train (20.0.0) release the SR-IOV live migration feature broke the semantics of the vifs field in the "migration_data" object that signals if the new multiple port binding workflow should be used by always populating it even when the "binding-extended" API extension is not present. This broke live migration for any deployment that did not support the optional "binding-extended" API extension. The Rocky behavior has now been restored enabling live migration using the single port binding workflow when multiple port bindings are not available. Changes in nova 21.1.2..21.2.0 ------------------------------ f6fefb6298 Handle instance = None in _local_delete_cleanup cee7725495 Add regression test for bug 1914777 8daac915bb Fallback to same-cell resize with qos ports aec1c42bd3 Default user_id when not specified in check_num_instances_quota f4591871ff Add regression test for bug 1893284 d9c833d5a4 only wait for plugtime events in pre-live-migration cb96119e59 tools: Allow check-cherry-picks.sh to be disabled by an env var cff48e2cd4 Add upgrade check about old computes f67627b44c Reproduce bug 1907522 in functional test 75bac345d5 Warn when starting services with older than N-1 computes 3b497ad7d4 Set instance host and drop migration under lock 02114a9d7f Reproduce bug 1896463 in func env 4ad7e5e263 Disallow CONF.compute.max_disk_devices_to_attach = 0 e7a45e0335 Use subqueryload() instead of joinedload() for (system_)metadata f7ba1aab5f compute: Lock by instance.uuid lock during swap_volume 97330d65e1 [doc]: Fix glance image_metadata link afa843c8a7 Set migrate_data.vifs only when using multiple port bindings 36cb57d97b libvirt: Only ask tpool.Proxy to autowrap vir* classes bea55a7d45 add functional regression test for bug #1888395 Diffstat (except docs and test files) ------------------------------------- api-guide/source/port_with_resource_request.rst | 3 +- .../admin/configuration/cross-cell-resize.rst | 3 +- .../admin/configuration/hypervisor-xen-libvirt.rst | 2 +- nova/api/openstack/wsgi_app.py | 7 + nova/cmd/status.py | 13 ++ nova/compute/api.py | 50 +++-- nova/compute/manager.py | 84 +++++--- nova/compute/resource_tracker.py | 18 ++ nova/compute/utils.py | 11 +- nova/conf/compute.py | 8 +- nova/db/sqlalchemy/api.py | 17 +- nova/exception.py | 8 + nova/network/constants.py | 1 + nova/network/model.py | 23 ++- nova/objects/service.py | 7 + nova/service.py | 12 ++ .../functional/regressions/test_bug_1888395.py | 131 ++++++++++++ .../functional/regressions/test_bug_1893284.py | 94 +++++++++ .../functional/regressions/test_bug_1896463.py | 224 +++++++++++++++++++++ .../functional/regressions/test_bug_1914777.py | 139 +++++++++++++ nova/utils.py | 50 +++++ nova/virt/libvirt/host.py | 8 +- ...s-having-resource-request-a8e1029ef5983793.yaml | 4 +- ...cky-portbinding-semantics-48e9b1fa969cc5e9.yaml | 14 ++ ...-started-with-old-compute-fc80b4ff58a2aaea.yaml | 9 + tools/check-cherry-picks.sh | 5 + tox.ini | 2 + 49 files changed, 1421 insertions(+), 105 deletions(-)