← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1224927] Re: instance_get_all_by_filters() does not propagate reading of deleted rows

 

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