diff --git a/nova/compute/resource_tracker.py b/nova/compute/resource_tracker.py index 972b0847f952..8857862154dc 100644 --- a/nova/compute/resource_tracker.py +++ b/nova/compute/resource_tracker.py @@ -419,6 +419,7 @@ class ResourceTracker(object): if self.compute_node: self._copy_resources(resources) self._setup_pci_tracker(context, resources) + self.scheduler_client.update_resource_stats(self.compute_node) return # now try to get the compute node record from the @@ -427,6 +428,7 @@ class ResourceTracker(object): if self.compute_node: self._copy_resources(resources) self._setup_pci_tracker(context, resources) + self.scheduler_client.update_resource_stats(self.compute_node) return # there was no local copy and none in the database @@ -441,6 +443,7 @@ class ResourceTracker(object): {'host': self.host, 'node': self.nodename}) self._setup_pci_tracker(context, resources) + self.scheduler_client.update_resource_stats(self.compute_node) def _setup_pci_tracker(self, context, resources): if not self.pci_tracker: diff --git a/nova/tests/unit/compute/test_resource_tracker.py b/nova/tests/unit/compute/test_resource_tracker.py index fb5bef8e5df1..fcc623ec502b 100644 --- a/nova/tests/unit/compute/test_resource_tracker.py +++ b/nova/tests/unit/compute/test_resource_tracker.py @@ -1035,6 +1035,7 @@ class TestInitComputeNode(BaseTestCase): self.assertFalse(create_mock.called) self.assertTrue(pci_mock.called) self.assertFalse(self.rt.disabled) + self.assertTrue(self.sched_client_mock.update_resource_stats.called) @mock.patch('nova.objects.PciDeviceList.get_by_compute_node', return_value=objects.PciDeviceList()) @@ -1057,6 +1058,7 @@ class TestInitComputeNode(BaseTestCase): _NODENAME) self.assertFalse(create_mock.called) self.assertFalse(self.rt.disabled) + self.assertTrue(self.sched_client_mock.update_resource_stats.called) @mock.patch('nova.objects.PciDeviceList.get_by_compute_node', return_value=objects.PciDeviceList(objects=[])) @@ -1134,6 +1136,7 @@ class TestInitComputeNode(BaseTestCase): self.rt.compute_node)) pci_tracker_mock.assert_called_once_with(mock.sentinel.ctx, 42) + self.assertTrue(self.sched_client_mock.update_resource_stats.called) class TestUpdateComputeNode(BaseTestCase):