Hi,
Commit 9d3311320f6fcf190c99068b3f566e2bf9a49d99
"caps: Collect numa information"
bruce <xiao-lei.shi(a)hp.com>
Introduced reporting of numa-related information in the getVdsCaps
verb. Unfortunately it also introduced a bug in machines without NUMA
support. On my mini-dell, the getVdsCaps verb is failing with the
following exception:
Thread-13::ERROR::2014-04-21 11:57:09,908::BindingXMLRPC::1068::vds::(wrapper) l
ibvirt error
Traceback (most recent call last):
File "/usr/share/vdsm/BindingXMLRPC.py", line 1061, in wrapper
res = f(*args, **kwargs)
File "/usr/share/vdsm/BindingXMLRPC.py", line 388, in getCapabilities
ret = api.getCapabilities()
File "/usr/share/vdsm/API.py", line 1193, in getCapabilities
c = caps.get()
File "/usr/share/vdsm/caps.py", line 458, in get
caps['numaNodes'] = _getNumaTopology()
File "/usr/lib64/python2.7/site-packages/vdsm/utils.py", line 958, in
__call__
value = self.func(*args)
File "/usr/share/vdsm/caps.py", line 189, in _getNumaTopology
memInfo = _getMemoryStatsByNumaCell(int(cellIndex))
File "/usr/share/vdsm/caps.py", line 203, in _getMemoryStatsByNumaCell
return libvirtconnection.get().getMemoryStats(cell, 0)
File "/usr/lib64/python2.7/site-packages/vdsm/libvirtconnection.py", line 92,
in wrapper
ret = f(*args, **kwargs)
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3405, in
getMemoryStats
if ret is None: raise libvirtError ('virNodeGetMemoryStats() failed',
conn=self)
libvirtError: internal error: NUMA isn't available on this host
I guess we need to catch this error and respond appropriately.
--
Adam Litke