Reviewed:  https://review.openstack.org/311145
Committed: 
https://git.openstack.org/cgit/openstack/nova-powervm/commit/?id=e72a505860b2f7ce2dd4a492f65d426f8b091e1f
Submitter: Jenkins
Branch:    master

commit e72a505860b2f7ce2dd4a492f65d426f8b091e1f
Author: Drew Thorstensen <tho...@us.ibm.com>
Date:   Fri Apr 29 10:12:33 2016 -0500

    Fix revert migration if flavor deleted
    
    After an instance is created, the flavor could be deleted.  But
    operations still need to be able to occur against the VM when that
    occurs.  A new test in Tempest showed that we had been using the
    incorrect (and potentially deleted) flavor when a resize/migration was
    reverting.
    
    This change updates the code to use the flavor that is stored on the
    instance itself.
    
    Change-Id: I16254d8eb74a724e3e0a538f47259e9627c4233a
    Closes-Bug: 1570748


** Changed in: nova-powervm
       Status: New => 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/1570748

Title:
  Bug: resize instance after edit flavor with horizon

Status in OpenStack Compute (nova):
  Fix Released
Status in OpenStack Compute (nova) kilo series:
  Fix Committed
Status in OpenStack Compute (nova) liberty series:
  Fix Committed
Status in OpenStack Compute (nova) mitaka series:
  Fix Committed
Status in nova-powervm:
  Fix Released
Status in tempest:
  Fix Released

Bug description:
  Error occured when resize instance after edit flavor with horizon (and
  also delete flavor used by instance)

  Reproduce step :

  1. create flavor A
  2. boot instance using flavor A
  3. edit flavor with horizon (or delete flavor A)
      -> the result is same to edit or to delelet flavor because edit flavor 
means delete/recreate flavor)
  4. resize or migrate instance
  5. Error occured

  Log : 
  nova-compute.log
     File "/opt/openstack/src/nova/nova/conductor/manager.py", line 422, in 
_object_dispatch
       return getattr(target, method)(*args, **kwargs)

     File "/opt/openstack/src/nova/nova/objects/base.py", line 163, in wrapper
       result = fn(cls, context, *args, **kwargs)

     File "/opt/openstack/src/nova/nova/objects/flavor.py", line 132, in 
get_by_id
       db_flavor = db.flavor_get(context, id)

     File "/opt/openstack/src/nova/nova/db/api.py", line 1479, in flavor_get
       return IMPL.flavor_get(context, id)

     File "/opt/openstack/src/nova/nova/db/sqlalchemy/api.py", line 233, in 
wrapper
       return f(*args, **kwargs)

     File "/opt/openstack/src/nova/nova/db/sqlalchemy/api.py", line 4732, in 
flavor_get
       raise exception.FlavorNotFound(flavor_id=id)

   FlavorNotFound: Flavor 7 could not be found.

  
  This Error is occured because of below code:
  /opt/openstack/src/nova/nova/compute/manager.py

      def resize_instance(self, context, instance, image,
                          reservations, migration, instance_type,
                          clean_shutdown=True):
  ....
              if (not instance_type or
                  not isinstance(instance_type, objects.Flavor)):
                  instance_type = objects.Flavor.get_by_id(
                      context, migration['new_instance_type_id'])
  ....

  I think that deleted flavor should be taken when resize instance. 
  I tested this in stable/kilo, but I think stable/liberty and stable/mitaka 
has same bug because source code is not changed.

  thanks.

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to