← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1153964] Re: forget to release resource before rescheduling

 

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

** Changed in: nova
    Milestone: None => grizzly-rc1

-- 
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/1153964

Title:
  forget to release resource before rescheduling

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  The master code.

  If  an exception raised in libvirt._create_domain(), the resouce( like
  iptable rules, vif , etc.) will forever stay in the host.

  An easy reproduction:
   0. setup all-in-one devstack.
   1.  settting vncserver_listen = 1.2.3.4 in nova.conf.  The configuration is to make libvirt._create_domain() raise an exception. In production environment, other reason can lead to an excetion. for example:  (see attachment).

  
  2.  nova boot --flavor 1 --image XXXX vm1

  3.  
  ubuntu@dev-stack:~$ nova list
  +--------------------------------------+------+--------+------------------+
  | ID                                   | Name | Status | Networks         |
  +--------------------------------------+------+--------+------------------+
  | a8872a5a-4ba1-43fa-9ce3-6d52e7b166a1 | vm1  | ERROR  | private=10.0.0.2 |
  +--------------------------------------+------+--------+------------------+

  nova show vm1
  +-----------------------------+---------------------------------------------------------------------------------+
  | Property                    | Value                                                                           |
  +-----------------------------+---------------------------------------------------------------------------------+
  | status                      | ERROR                                                                           |
  | updated                     | 2013-03-12T08:31:20Z                                                            |
  | OS-EXT-STS:task_state       | None                                                                            |
  | key_name                    | None                                                                            |
  | image                       | cirros-0.3.1-x86_64-uec (f8b011a1-dac2-48be-ba8a-3d9241628bc1)                  |
  | hostId                      | 409593d0d130d1be6902b6dd565e259e4c874ac03e1ba26c3a3c7787                        |
  | OS-EXT-STS:vm_state         | error                                                                           |
  | flavor                      | m1.tiny (1)                                                                     |
  | id                          | a8872a5a-4ba1-43fa-9ce3-6d52e7b166a1                                            |
  | security_groups             | [{u'name': u'default'}]                                                         |
  | user_id                     | 9694194fd660483ea427faf2da47795c                                                |
  | name                        | vm1                                                                             |
  | created                     | 2013-03-12T08:31:04Z                                                            |
  | fault                       | {u'message': u'NoValidHost', u'code': 500, u'created': u'2013-03-12T08:31:20Z'} |
  | OS-DCF:diskConfig           | MANUAL                                                                          |
  | metadata                    | {}                                                                              |
  | accessIPv4                  |                                                                                 |
  | accessIPv6                  |                                                                                 |
  | tenant_id                   | 6cc57820330644c98d606a15890678ff                                                |
  | OS-EXT-STS:power_state      | 0                                                                               |
  | OS-EXT-AZ:availability_zone | nova                                                                            |
  | config_drive                |                                                                                 |
  +-----------------------------+---------------------------------------------------------------------------------+

  4. ubuntu@dev-stack:~$ sudo iptables-save |grep 10.0.0.2
  -A nova-compute-local -d 10.0.0.2/32 -j nova-compute-inst-1

  If there is more than one host, the instance will be rescheduled to
  other host. but the resources in this host will not release forever.

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