nova/nova/virt/ironic
Jay Faulkner fa3cf7d50c [ironic] Partition & use cache for list_instance*
list_instances and list_instance_uuids, as written in the Ironic driver,
do not currently respect conductor_group paritioning. Given a nova
compute is intended to limit it's scope of work to the conductor group
it is configured to work with; this is a bug.

Additionally, this should be a significant performance boost for a
couple of reasons; firstly, instead of calling the Ironic API and
getting all nodes, instead of the subset (when using conductor group),
we're now properly getting the subset of nodes -- this is the optimized
path in the Ironic DB and API code. Secondly, we're now using the
driver's node cache to respond to these requests. Since list_instances
and list_instance_uuids is used by periodic tasks, these operating with
data that may be slightly stale should have minimal impact compared to
the performance benefits.

Closes-bug: #2043036
Change-Id: If31158e3269e5e06848c29294fdaa147beedb5a5
2023-12-19 14:56:42 -08:00
..
__init__.py Import Ironic Driver & supporting files - part 1 2014-09-05 19:00:12 -04:00
driver.py [ironic] Partition & use cache for list_instance* 2023-12-19 14:56:42 -08:00
ironic_states.py virt/ironic: Implement rescue and unrescue 2018-07-13 01:56:13 +00:00
patcher.py Remove Ironic client wrapper 2023-12-05 12:09:56 +00:00