nova/nova/scheduler
Sean Mooney f08d0ccf84 Disable NUMATopologyFilter on rebuild
This change leverages the new NUMA constraint checking added in
in I0322d872bdff68936033a6f5a54e8296a6fb3434 to allow the
NUMATopologyFilter to be skipped on rebuild.

As the new behavior of rebuild enfroces that no changes
to the numa constraints are allowed on rebuild we no longer
need to execute the NUMATopologyFilter. Previously
the NUMATopologyFilter would process the rebuild request
as if it was a request to spawn a new instnace as the
numa_fit_instance_to_host function is not rebuild aware.

As such prior to this change a rebuild would only succeed
if a host had enough additional capacity for a second instance
on the same host meeting the requirement of the new image and
existing flavor. This behavior was incorrect on two counts as
a rebuild uses a noop claim. First the resouce usage cannot
change so it was incorrect to require the addtional capacity
to rebuild an instance. Secondly it was incorrect not to assert
the resouce usage remained the same.

I0322d872bdff68936033a6f5a54e8296a6fb3434 adressed guarding the
rebuild against altering the resouce usage and this change
allows in place rebuild.

This change found a latent bug that will be adressed in a follow
up change and updated the functional tests to note the incorrect
behavior.

Conflicts:
    nova/tests/functional/libvirt/test_numa_servers.py

NOTE(sean-k-mooney): Trivial import conflicts

Change-Id: I48bccc4b9adcac3c7a3e42769c11fdeb8f6fd132
Closes-Bug: #1804502
Implements: blueprint inplace-rebuild-of-numa-instances
(cherry picked from commit 3f9411071d)
(cherry picked from commit 94c0362918)
(cherry picked from commit 4a691c33d1)
2020-07-09 14:06:22 +01:00
..
client Fix false ERROR message at compute restart 2019-11-27 13:52:43 +01:00
filters Disable NUMATopologyFilter on rebuild 2020-07-09 14:06:22 +01:00
weights Change deprecated policies to policy 2018-07-27 02:20:30 +00:00
__init__.py Improve hacking rule to avoid author markers 2014-05-05 14:35:20 +02:00
caching_scheduler.py Mark Chance and Caching schedulers as deprecated 2017-08-09 10:53:53 -07:00
chance.py Modify select_destinations() to return objects and alts 2017-12-07 15:01:13 +00:00
driver.py Remove [scheduler]/host_manager config option 2018-05-03 09:39:26 -04:00
filter_scheduler.py Fix WeighedHost logging regression 2019-03-06 13:48:30 +00:00
host_manager.py Init HostState.failed_builds 2019-07-01 16:26:59 +00:00
manager.py Use INFO for logging no allocation candidates 2018-09-27 11:06:45 -04:00
request_filter.py Honor availability_zone hint via placement 2018-05-22 08:56:50 -07:00
rpcapi.py Use long_rpc_timeout in select_destinations RPC call 2018-11-26 12:52:39 -05:00
utils.py Disable limit if affinity(anti)/same(different)host is requested 2019-07-01 11:01:27 -04:00