Comment 3 for bug 1739349

Revision history for this message
Minho Ban (mhban) wrote :

This bug has been appeared since the commit below.

commit b6edbce9b3b092581eeda6be15059a1ba2bfcfdf
Author: He Jie Xu <email address hidden>
Date: Thu Sep 8 19:46:24 2016 +0800

    Ensure ResourceProvider/Inventory created before add Allocations record

diff --git a/nova/compute/resource_tracker.py b/nova/compute/resource_tracker.py
index 972b084..8857862 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)

I'm not quite sure why such DB updating is required at here but because of that NUMA usage information has gone away. I think if the patch just aimed to provide RP then it should have implemented taking other way.

But for now there seem to be no such error like bug #1621437 anymore even without the patch.