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})
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.
This bug has been appeared since the commit below.
commit b6edbce9b3b0925 81eeda6be15059a 1ba2bfcfdf
Author: He Jie Xu <email address hidden>
Date: Thu Sep 8 19:46:24 2016 +0800
Ensure ResourceProvide r/Inventory created before add Allocations record
diff --git a/nova/ compute/ resource_ tracker. py b/nova/ compute/ resource_ tracker. py compute/ resource_ tracker. py compute/ resource_ tracker. py (object) :
self. _copy_resources (resources)
self. _setup_ pci_tracker( context, resources) client. update_ resource_ stats(self. compute_ node)
index 972b084..8857862 100644
--- a/nova/
+++ b/nova/
@@ -419,6 +419,7 @@ class ResourceTracker
if self.compute_node:
+ self.scheduler_
return
# now try to get the compute node record from the (object) :
self. _copy_resources (resources)
self. _setup_ pci_tracker( context, resources) client. update_ resource_ stats(self. compute_ node)
@@ -427,6 +428,7 @@ class ResourceTracker
if self.compute_node:
+ self.scheduler_
return
# there was no local copy and none in the database (object) :
{'host' : self.host, 'node': self.nodename})
@@ -441,6 +443,7 @@ class ResourceTracker
+ self.scheduler_
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.