Reviewed:  https://review.openstack.org/25521
Committed: 
http://github.com/openstack/nova/commit/1fa7879071310fda7d8393716441dd02be38fc30
Submitter: Jenkins
Branch:    milestone-proposed

commit 1fa7879071310fda7d8393716441dd02be38fc30
Author: Dan Smith <[email protected]>
Date:   Tue Mar 26 13:14:56 2013 -0700

    Always store old instance_type during a migration
    
    Previously, we were trying to optimize for the migration (as opposed
    to resize) case by not storing the old_ instance_type. However,
    this is confusing to the vast amount of shared code that works on
    migrations and resizes because the "is old == new" logic must be
    replicated everywhere. To cut our losses and hopefully avoid other
    hidden dragons, this patch removes the optimization and makes both
    paths the same.
    
    Fixes bug #1160489
    
    Change-Id: I2ad7b02239baada5fd2174f5b61cdc90ec91e6f5
    (cherry picked from commit 985d703d2731fe9ec968ef6698bbf39743ede32a)


** 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/1160489

Title:
  periodically seeing KeyError: 'old_instance_type_memory_mb' in
  compute.log

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  When running multiple migrations concurrently, I see an error the
  repeats in the compute.log file.  The trace can be seen here:

  http://pastebin.com/XRr70jpU

  Here is the steps I followed to recreate this issue:

  (1).  Boot the instances

  nova boot --image be8b6475-26d8-410f-aaa5-8b278d98c8f9 --flavor 1 MIGRATE1
  nova boot --image be8b6475-26d8-410f-aaa5-8b278d98c8f9 --flavor 1 MIGRATE2
  nova boot --image be8b6475-26d8-410f-aaa5-8b278d98c8f9 --flavor 1 MIGRATE3

  [root@vs347 ~]# nova list
  
+--------------------------------------+----------+--------+-------------------+
  | ID                                   | Name     | Status | Networks         
 |
  
+--------------------------------------+----------+--------+-------------------+
  | ccf6212b-bb8d-4826-97db-e18b4d4cb2b0 | MIGRATE1 | ACTIVE | 
demonet=172.0.0.2 |
  | 739a6d71-cc63-4a34-b14f-7aef6f635a31 | MIGRATE2 | ACTIVE | 
demonet=172.0.0.4 |
  | 11dabeb8-2799-40e1-a355-4d58f935a9c6 | MIGRATE3 | ACTIVE | 
demonet=172.0.0.3 |
  
+--------------------------------------+----------+--------+-------------------+

  bvt-instance-00000029 - olyblade02
  bvt-instance-0000002a - olyblade02
  bvt-instance-0000002b - olyblade02

  (2). migrate the instances simultaneously

  [root@vs347 ~]# nova migrate MIGRATE1
  [root@vs347 ~]# nova migrate MIGRATE2
  [root@vs347 ~]# nova migrate MIGRATE3
  [root@vs347 ~]# 

  * State as of 4:24 p.m.

  
+--------------------------------------+----------+--------+-------------------+
  | ID                                   | Name     | Status | Networks         
 |
  
+--------------------------------------+----------+--------+-------------------+
  | ccf6212b-bb8d-4826-97db-e18b4d4cb2b0 | MIGRATE1 | RESIZE | 
demonet=172.0.0.2 |
  | 739a6d71-cc63-4a34-b14f-7aef6f635a31 | MIGRATE2 | RESIZE | 
demonet=172.0.0.4 |
  | 11dabeb8-2799-40e1-a355-4d58f935a9c6 | MIGRATE3 | RESIZE | 
demonet=172.0.0.3 |
  
+--------------------------------------+----------+--------+-------------------+

  * Now they are in resize-verify state so do confirm

  [root@vs347 ~]# nova resize-confirm MIGRATE1
  [root@vs347 ~]# nova resize-confirm MIGRATE2
  [root@vs347 ~]# nova resize-confirm MIGRATE3
  [root@vs347 ~]#

  [root@vs347 ~]# nova list
  
+--------------------------------------+----------+--------+-------------------+
  | ID                                   | Name     | Status | Networks         
 |
  
+--------------------------------------+----------+--------+-------------------+
  | ccf6212b-bb8d-4826-97db-e18b4d4cb2b0 | MIGRATE1 | ERROR  | 
demonet=172.0.0.2 |
  | 739a6d71-cc63-4a34-b14f-7aef6f635a31 | MIGRATE2 | ACTIVE | 
demonet=172.0.0.4 |
  | 11dabeb8-2799-40e1-a355-4d58f935a9c6 | MIGRATE3 | ACTIVE | 
demonet=172.0.0.3 |
  
+--------------------------------------+----------+--------+-------------------+

  [root@vs347 ~]# nova show MIGRATE1
  
+-------------------------------------+------------------------------------------------------------------------------------------------------------------------+
  | Property                            | Value                                 
                                                                                
 |
  
+-------------------------------------+------------------------------------------------------------------------------------------------------------------------+
  | status                              | ERROR                                 
                                                                                
 |
  | updated                             | 2013-03-22T21:52:21Z                  
                                                                                
 |
  | OS-EXT-STS:task_state               | None                                  
                                                                                
 |
  | OS-EXT-SRV-ATTR:host                | vs347.rch.kstart.ibm.com              
                                                                                
 |
  | key_name                            | None                                  
                                                                                
 |
  | image                               | Rhel6MasterFile 
(be8b6475-26d8-410f-aaa5-8b278d98c8f9)                                          
                       |
  | hostId                              | 
a3883219ffb68903fc2ecc1e0a490f3f250fdf3773f446bcb398441c                        
                                       |
  | OS-EXT-STS:vm_state                 | error                                 
                                                                                
 |
  | OS-EXT-SRV-ATTR:instance_name       | bvt-instance-00000029                 
                                                                                
 |
  | OS-EXT-SRV-ATTR:hypervisor_hostname | olyblade01.rch.stglabs.ibm.com        
                                                                                
 |
  | flavor                              | m1.tiny (1)                           
                                                                                
 |
  | demonet network                     | 172.0.0.2                             
                                                                                
 |
  | id                                  | ccf6212b-bb8d-4826-97db-e18b4d4cb2b0  
                                                                                
 |
  | security_groups                     | [{u'name': u'default'}]               
                                                                                
 |
  | user_id                             | 3ccf55fd609b45319f24fe681338886d      
                                                                                
 |
  | name                                | MIGRATE1                              
                                                                                
 |
  | created                             | 2013-03-22T21:19:00Z                  
                                                                                
 |
  | tenant_id                           | 67b1c37f4ca64283908c7077e9e59997      
                                                                                
 |
  | OS-DCF:diskConfig                   | MANUAL                                
                                                                                
 |
  | metadata                            | {}                                    
                                                                                
 |
  | accessIPv4                          |                                       
                                                                                
 |
  | accessIPv6                          |                                       
                                                                                
 |
  | fault                               | {u'message': u'KeyError', u'code': 
500, u'details': u'\'old_instance_type_memory_mb\'                              
    |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 229, in 
decorated_function                     |
  |                                     |     return function(self, context, 
*args, **kwargs)                                                                
    |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 1956, in 
confirm_resize                        |
  |                                     |     rt.confirm_resize(context, 
migration)                                                                      
        |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 373, 
in confirm_resize                |
  |                                     |     
self.update_available_resource(elevated)                                        
                                   |
  |                                     |   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 269, 
in update_available_resource     |
  |                                     |     
self._update_usage_from_migrations(resources, migrations)                       
                                   |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 468, 
in _update_usage_from_migrations |
  |                                     |     migration)                        
                                                                                
 |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/resource_tracker.py", line 428, 
in _update_usage_from_migration  |
  |                                     |     itype = 
instance_types.extract_instance_type(instance, \'old_\')                        
                           |
  |                                     |   File 
"/usr/lib/python2.6/site-packages/nova/compute/instance_types.py", line 250, in 
extract_instance_type           |
  |                                     |     instance_type[key] = 
type_fn(sys_meta[type_key])                                                     
              |
  |                                     | ', u'created': 
u'2013-03-22T21:52:21Z'}                                                        
                        |
  | OS-EXT-STS:power_state              | 1                                     
                                                                                
 |
  | OS-EXT-AZ:availability_zone         | nova                                  
                                                                                
 |
  | config_drive                        |                                       
                                                                                
 |
  
+-------------------------------------+------------------------------------------------------------------------------------------------------------------------+

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to