I think the reason you can't reproduce this is because it looks like Nova no longer deletes instance_system_metadata rows when it deletes the instance record.
I assume this bug (captured as https://bugs.launchpad.net/nova/+bug/1226049 ) was introduced as part of the change to the object model (we've been tracking trunk, so I have old deleted instances that do have deleted instance_system_metadata rows). As these rows are currently not being deleted, the query on a deleted instance will (for now) populate the metadata structure. You can reproduce the issue I was seeing by marking the corresponding rows in instance_system_metadata as deleted. However - having done that and traced the issue further, the issue isn't actually in the DB layer at all, but in the logic of extracting flavors from an instance record. I've captured this a new bug (https://bugs.launchpad.net/nova/+bug/1226083) so this one can be closed. ** Changed in: nova Status: Incomplete => Invalid -- 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/1224927 Title: instance_get_all_by_filters() does not propagate reading of deleted rows Status in OpenStack Compute (Nova): Invalid Bug description: db.instance_get_all_by_filters() calls _instance_fill_metadata() to add system metadata to the instance object. However in the case of a deleted instance (filter includes 'deleted') this filter is not passed on to the metadata query, and so system metadata is not returned. This makes the instance object inconsistent compared to non-deleted instances, resulting in KeyError exceptions in other parts of the code To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1224927/+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