We are ecstatic to announce the release of: nova 20.4.1: Cloud computing fabric controller This release is part of the train 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. 20.4.1 ^^^^^^ Bug Fixes * Since Libvirt v.1.12.0 and the introduction of the libvirt issue , there is a fact that if we set cache mode whose write semantic is not O_DIRECT (i.e. "unsafe", "writeback" or "writethrough"), there will be a problem with the volume drivers (i.e. LibvirtISCSIVolumeDriver, LibvirtNFSVolumeDriver and so on), which designate native io explicitly. When the driver_cache (default is none) has been configured as neither "none" nor "directsync", the libvirt driver will ensure the driver_io to be "threads" to avoid an instance spawning failure. (https://bugzilla.redhat.com/show_bug.cgi?id=1086704) * An issue that could result in instances with the "isolate" thread policy ("hw:cpu_thread_policy=isolate") being scheduled to hosts with SMT (HyperThreading) and consuming "VCPU" instead of "PCPU" has been resolved. See bug #1889633 for more information. (https://bugs.launchpad.net/nova/+bug/1889633) * Addressed an issue that prevented instances using multiqueue feature from being created successfully when their vif_type is TAP. * Resolved an issue whereby providing an empty list for the "policies" field in the request body of the "POST /os-server-groups" API would result in a server error. This only affects the 2.1 to 2.63 microversions, as the 2.64 microversion replaces the "policies" list field with a "policy" string field. See bug #1894966 for more information. (https://bugs.launchpad.net/nova/+bug/1894966) Changes in nova 20.4.0..20.4.1 ------------------------------ 115b43ed3e Follow up for cherry-pick check for merge patch 750655c19d Allow tap interface with multiqueue 75c0327a67 Set different VirtualDevice.key 1634d3f59a api: Set min, maxItems for server_group.policies field cf6db29168 tests: Add regression test for bug 1894966 efc35b1c52 Sanity check instance mapping during scheduling 4984b3b75b Correctly disable greendns 06df7cae31 Removes the delta file once image is extracted 7ace26e4bc post live migration: don't call Neutron needlessly d92fe4f3e6 libvirt:driver:Disallow AIO=native when 'O_DIRECT' is not available ed9eacff92 Add note and daxio version to the vPMEM document bbc562c572 compute: Validate a BDMs disk_bus when provided c5abbd17b5 Removed the host FQDN from the exception message 683005df39 Add checks for volume status when rebuilding c6c3483a41 compute: Don't delete the original attachment during pre LM rollback 377dc5bda9 compute: refactor volume bdm rollback error handling 6a9bb79fc0 Add regression tests for bug #1889108 44676ddf84 hardware: Reject requests for no hyperthreads on hosts with HT b60be4a941 tests: Add reproducer for bug #1889633 Diffstat (except docs and test files) ------------------------------------- api-ref/source/parameters.yaml | 7 +- .../api/openstack/compute/schemas/server_groups.py | 18 ++- nova/api/openstack/compute/servers.py | 2 + nova/compute/api.py | 30 ++++- nova/compute/manager.py | 94 ++++++++++---- nova/conductor/manager.py | 79 +++++++++--- nova/exception.py | 7 +- nova/monkey_patch.py | 23 ++-- nova/objects/fields.py | 2 + .../functional/regressions/test_bug_1889108.py | 111 ++++++++++++++++ .../functional/regressions/test_bug_1894966.py | 40 ++++++ .../api/openstack/compute/test_server_actions.py | 15 +++ .../unit/api/openstack/compute/test_serversV21.py | 3 +- nova/virt/hardware.py | 24 ++++ nova/virt/libvirt/driver.py | 20 +++ nova/virt/libvirt/host.py | 2 +- nova/virt/libvirt/vif.py | 57 ++++++--- nova/virt/libvirt/volume/mount.py | 2 +- nova/virt/vmwareapi/vm_util.py | 8 +- ...ative-io-is-not-supported-fe56014e9648a518.yaml | 14 ++ .../notes/bug-1889633-37e524fb6c20fbdf.yaml | 9 ++ .../notes/bug-1893263-769acadc4b6141d0.yaml | 5 + .../notes/bug-1894966-d25c12b1320cb910.yaml | 10 ++ tools/check-cherry-picks.sh | 2 +- 34 files changed, 1117 insertions(+), 111 deletions(-)