← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1152792] Re: automatic confirmation after resize fails

 

** Changed in: nova
       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/1152792

Title:
  automatic confirmation after resize fails

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  To enable automatic confirmation after resize/migrate, we set the
  value of confirm_resize_window to 1.  This did in fact enable the
  processing for the automatic confirmation, but an error was returned
  because of a database access issue:

  2013-03-08 12:13:42.072 93054 INFO nova.compute.manager [-] Found 1 unconfirmed migrations older than 1 seconds
  2013-03-08 12:13:42.074 93054 INFO nova.compute.manager [-] Automatically confirming migration 18 for instance da9eba9d-0175-4b1c-b85f-246d7bb20c05
  2013-03-08 12:13:42.074 93054 DEBUG nova.openstack.common.rpc.amqp [-] Making synchronous call on conductor ... multicall /usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py:541
  2013-03-08 12:13:42.074 93054 DEBUG nova.openstack.common.rpc.amqp [-] MSG_ID is 14ef28def01b4e55aa8db832b236dfbe multicall /usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py:544
  2013-03-08 12:13:42.231 93054 DEBUG nova.utils [-] Reloading cached file /etc/nova/policy.json read_cached_file /usr/lib/python2.6/site-packages/nova/utils.py:1123
  2013-03-08 12:13:42.242 93054 ERROR nova.compute [-] No db access allowed in nova-compute:   File "/usr/lib/python2.6/site-packages/eventlet/greenthread.py", line 192, in main
      result = function(*args, **kwargs)
    File "/usr/lib/python2.6/site-packages/nova/utils.py", line 636, in _inner
      idle = self.f(*self.args, **self.kw)
    File "/usr/lib/python2.6/site-packages/nova/service.py", line 571, in periodic_tasks
      return self.manager.periodic_tasks(ctxt, raise_on_error=raise_on_error)
    File "/usr/lib/python2.6/site-packages/nova/manager.py", line 241, in periodic_tasks
      task(self, context)
    File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 3248, in _poll_unconfirmed_resizes
      self.compute_api.confirm_resize(context, instance)
    File "/usr/lib/python2.6/site-packages/nova/compute/api.py", line 170, in wrapped
      return func(self, context, target, *args, **kwargs)
    File "/usr/lib/python2.6/site-packages/nova/compute/api.py", line 160, in inner
      return function(self, context, instance, *args, **kwargs)
    File "/usr/lib/python2.6/site-packages/nova/compute/api.py", line 141, in inner
      return f(self, context, instance, *args, **kw)
    File "/usr/lib/python2.6/site-packages/nova/compute/api.py", line 1852, in confirm_resize
      instance['uuid'], 'finished')
    File "/usr/lib/python2.6/site-packages/nova/db/api.py", line 397, in migration_get_by_instance_and_status
      status)
    File "/usr/bin/nova-compute", line 66, in __call__
      stacktrace = "".join(traceback.format_stack()) 

  
  After searching the community and coming across the blueprint at https://blueprints.launchpad.net/nova/+spec/no-db-compute and the bug at https://bugs.launchpad.net/nova/+bug/823000, I started to suspect the issue could have been caused by this change.  To test this theory, in /usr/bin/nova-compute we commented out lines 78 and 79 and set the parm referenced in line 83 to db_allowed=True (https://github.com/openstack/nova/blob/master/bin/nova-compute#L78).  After restarting nova and trying a new resize operation, the automatic confirmation was working.

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