← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1444021] Re: HostState.consume_from_instance fails when instance has numa topology

 

** Changed in: nova/kilo
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1444021

Title:
  HostState.consume_from_instance fails when instance has numa topology

Status in OpenStack Compute (Nova):
  Fix Committed
Status in OpenStack Compute (nova) kilo series:
  Fix Released

Bug description:

  The consume_from_instance method will throw an exception if the instance has numa topology defined. 
  This happens because  'requests' are not retrieved from pci_requests.

  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher Traceback (most recent call last):
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 142, in _dispatch_and_reply
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     executor_callback))
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 186, in _dispatch
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     executor_callback)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 130, in _do_dispatch
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     result = func(ctxt, **new_args)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 142, in inner
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     return func(*args, **kwargs)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/scheduler/manager.py", line 86, in select_destinations
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     filter_properties)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/scheduler/filter_scheduler.py", line 67, in select_destinations
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     filter_properties)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/scheduler/filter_scheduler.py", line 163, in _schedule
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     chosen_host.obj.consume_from_instance(instance_properties)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/scheduler/host_manager.py", line 280, in consume_from_instance
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     pci_requests=pci_requests, pci_stats=self.pci_stats)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/virt/hardware.py", line 1034, in numa_fit_instance_to_host
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     cells)):
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/pci/stats.py", line 222, in support_requests
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     for r in requests])
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher   File "/opt/stack/nova/nova/pci/stats.py", line 196, in _apply_request
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher     matching_pools = self._filter_pools_for_spec(pools, request.spec)
  2015-04-14 14:41:39.243 TRACE oslo_messaging.rpc.dispatcher AttributeError: 'unicode' object has no attribute 'spec'

  If the instance has pci_requests this may not work either as apply_requests will remove pci devices from the pool so 
  numa_fit_instance_to_host may fail (because there are no devices left)

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1444021/+subscriptions


References