nova/nova/tests/scheduler
John Garbutt 1b24bfbd73 Add a caching scheduler driver
This adds a new scheduler driver, CachingScheduler

It currently subclasses the filter scheduler and only adds caching of
calls to host_manager.get_all_host_states.

It relies on there being a small number of schedulers, ideally one,
calls to consume_from_instance within the filter scheduler to update the
current cached list of hosts, and a low rate of deletes.

It introduces the new config value:
scheduler_driver_task_period

The periodic task it controls is used by the caching scheduler to fetch
an updated copy of host_manager.get_all_host_states.

If your value for service_down_time is much smaller than
scheduler_driver_task_period, there will be issues with hosts appearing
to be dead, just because the list of hosts is being cached. Correct
configuration of those two values can avoid this issue.

DocImpact
Part of blueprint caching-scheduler
Change-Id: I2eb873ce8024a576e597205e2d52b5d5e8aee97a
2014-02-26 13:53:07 +00:00
..
__init__.py Remove vi modelines 2014-02-03 14:19:44 +00:00
fakes.py MetricsWeigher: Added support of unavailable metrics 2014-02-18 10:15:35 +08:00
test_caching_scheduler.py Add a caching scheduler driver 2014-02-26 13:53:07 +00:00
test_chance_scheduler.py Remove vi modelines 2014-02-03 14:19:44 +00:00
test_filter_scheduler.py Deprecate/remove scheduler select_hosts() 2013-12-13 08:45:44 +01:00
test_filters.py Utilizes assertIsNone and assertIsNotNone - tests/etc 2013-10-31 06:06:02 +09:00
test_host_filters.py Added a new scheduler filter for metrics 2014-01-22 11:35:01 +08:00
test_host_manager.py Merge "Correct host managers free disk calculation" 2014-02-13 12:10:22 +00:00
test_rpcapi.py Fix a couple of unit test typos 2014-02-08 16:33:23 -05:00
test_scheduler.py Remove vi modelines 2014-02-03 14:19:44 +00:00
test_scheduler_options.py Replace assertEquals with assertEqual - tests/scheduler 2013-10-31 10:22:34 +08:00
test_scheduler_utils.py Change assertTrue(isinstance()) by optimal assert 2014-02-12 16:19:08 +01:00
test_weights.py MetricsWeigher: Added support of unavailable metrics 2014-02-18 10:15:35 +08:00