nova boot fail because KeyError : u'disk_gb_limit'

Bug #1175923 reported by kaitian521
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
Michael Still

Bug Description

I use Havana openstack, and after installing all the modules, i use :nova boot --image XXX --flavor 1 instance_name" , BUT the instance come to ERROR state. I looked up the compute.log,

ERROR is :

2013-05-03 00:20:55 ERROR [nova.openstack.common.rpc.amqp] Exception during scheduler.run_instance
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 433, in _process_data
    **args)
  File "/usr/lib/python2.6/site-packages/nova/openstack/common/rpc/dispatcher.py", line 148, in dispatch
    return getattr(proxyobj, method)(ctxt, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/exception.py", line 117, in wrapped
    temp_level, payload)
  File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
    self.gen.next()
  File "/usr/lib/python2.6/site-packages/nova/exception.py", line 94, in wrapped
    return f(self, context, *args, **kw)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 213, in decorated_function
    pass
  File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
    self.gen.next()
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 199, in decorated_function
    return function(self, context, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 264, in decorated_function
    function(self, context, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 241, in decorated_function
    e, sys.exc_info())
  File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
    self.gen.next()
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 228, in decorated_function
    return function(self, context, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 1319, in run_instance
    do_run_instance()
  File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 242, in inner
    retval = f(*args, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 1318, in do_run_instance
    admin_password, is_first_time, node, instance)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 877, in _run_instance
    notify("error", msg=unicode(e)) # notify that build failed
  File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
    self.gen.next()
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 861, in _run_instance
    admin_password, is_first_time, node, instance, image_meta)
  File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 920, in _build_instance
    with rt.instance_claim(context, instance, limits):
  File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 242, in inner
    retval = f(*args, **kwargs)
  File "/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 103, in instance_claim
    if claim.test(self.compute_node, limits):
  File "/usr/lib/python2.6/site-packages/nova/compute/claims.py", line 120, in test
    can_claim = (self._test_memory(resources, memory_mb_limit) and
  File "/usr/lib/python2.6/site-packages/nova/compute/claims.py", line 138, in _test_memory
    return self._test(type_, unit, total, used, requested, limit)
  File "/usr/lib/python2.6/site-packages/nova/compute/claims.py", line 175, in _test
    "%(unit)s") % locals()

WHEN I comment the line out , boot can be active.

    msg = _("%(type_)s limit: %(limit)d %(unit)s, free: %(free)d %(unit)s") % locals()

BY THE WAY, when I change it to

    msg = _("%(type_)s limit: %(limit)f %(unit)s, free: %(free)f %(unit)s") % locals()

nova boot can success also, "limit" may be a float instead of a integer.

Thank you

kaitian521 (kaitian521)
description: updated
Michael Still (mikal)
Changed in nova:
assignee: nobody → Michael Still (mikalstill)
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/28493

Changed in nova:
status: Triaged → In Progress
Revision history for this message
Matt Riedemann (mriedem) wrote :
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/28493
Committed: http://github.com/openstack/nova/commit/f53df8c4f50437eb7568979636c7503fcd43afee
Submitter: Jenkins
Branch: master

commit f53df8c4f50437eb7568979636c7503fcd43afee
Author: Michael Still <email address hidden>
Date: Wed May 8 12:02:59 2013 +1000

    Fix format error in claims.

    I have now seen two bug reports today about log message formatting
    in the claims code. I'm not 100% sure what's going on here, but
    I've removed the use of locals() in the hope it makes it clearer.
    I've also moved to treating limits as floats because I think it
    makes the messages clearer, but it is not a functional change.

    Resolves bug 1175923.

    Change-Id: I8b7b31f2637d1ab41d0fb2f274545181f9fddd9d

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → havana-1
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: havana-1 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.