nova/nova/scheduler/filters
Matt Riedemann 46ba7e8df5 Deprecate TypeAffinityFilter
This deprecates the TypeAffinityFilter. This filter, which
is really an anti-affinity filter for flavors, attempts to
ensure that no two flavors show up on the same host. However,
to do this it relies on the flavors.id primary key, which is
subject to "change" if/when the admin deletes and recreates a
flavor (this is how Horizon allows you to 'edit' a flavor).
When you do that, you have a new flavor with a new id primary
key and the filter will not know the difference. So you could
really end up with more than one m1.large instance on the
same host, which defeats the purpose of the filter.

This filter is also problematic for
blueprint put-host-manager-instance-info-on-a-diet because in
that blueprint we want to stop sending full instance objects
over RPC from all compute services to the scheduler just to
track affinity and anti-affinity. All we really need for the
ServerGroupAffinityFilter and ServerGroupAntiAffinityFilter
is the list of instance uuids on a host, not the full object.
If we can get rid of TypeAffinityFilter, we can change the
compute<>scheduler RPC calls to just pass the list of instance
uuids for update_instance_info rather than sending an InstanceList.

Change-Id: I660e0316b11afcad65c0fe7bd167ddcec9239a8b
2017-05-27 10:15:25 +00:00
..
__init__.py Modify left filters for RequestSpec 2015-12-11 12:27:20 +01:00
affinity_filter.py Merge "Style improvements" 2016-06-01 11:28:46 +00:00
aggregate_image_properties_isolation.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
aggregate_instance_extra_specs.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
aggregate_multitenancy_isolation.py Modify Aggregate filters for RequestSpec 2015-11-24 23:39:14 +01:00
all_hosts_filter.py Modify left filters for RequestSpec 2015-12-11 12:27:20 +01:00
availability_zone_filter.py Config options: centralize options in availability_zones 2016-01-27 17:32:04 +00:00
compute_capabilities_filter.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
compute_filter.py Remove unused CONF imports 2016-02-15 16:40:53 +11:00
core_filter.py BaseCoreFilter docstring and formating improved 2016-04-14 18:15:02 +03:00
disk_filter.py Prevent instance disk overcommit against itself 2016-06-21 13:25:28 -05:00
exact_core_filter.py Apply scheduler limits to Exact* filters 2016-02-01 09:41:51 +00:00
exact_disk_filter.py Apply scheduler limits to Exact* filters 2016-02-01 09:41:51 +00:00
exact_ram_filter.py Fix missing of unit in debug info 2016-02-20 10:42:49 +08:00
extra_specs_ops.py Removed unused variables 2015-05-20 14:31:33 +03:00
image_props_filter.py objects: Move 'vm_mode' to 'fields.VMMode' 2016-11-25 16:19:44 +00:00
io_ops_filter.py conf: Group scheduler options 2016-10-07 14:36:21 +01:00
isolated_hosts_filter.py conf: Group scheduler options 2016-10-07 14:36:21 +01:00
json_filter.py Modify left filters for RequestSpec 2015-12-11 12:27:20 +01:00
metrics_filter.py Removal of unnecessary `import_opt`s for centralized config options 2016-03-21 07:48:44 +00:00
num_instances_filter.py conf: add min parameter to scheduler opts 2017-02-03 21:30:17 +00:00
numa_topology_filter.py scheduler: Don't modify RequestSpec.numa_topology 2017-01-23 17:26:06 +00:00
pci_passthrough_filter.py PCI: Check pci_requests object is empty before passing to support_requests 2017-01-25 11:14:39 +02:00
ram_filter.py Modify default filters for RequestSpec 2015-11-30 09:47:27 +01:00
retry_filter.py Log retries at INFO level per guidelines 2016-01-23 21:45:03 -08:00
trusted_filter.py Deprecate scheduler trusted filter 2017-05-19 14:45:12 +00:00
type_filter.py Deprecate TypeAffinityFilter 2017-05-27 10:15:25 +00:00
utils.py scheduler: fix incorrect log message 2015-11-19 08:55:11 +08:00