← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1830438] [NEW] Hard deleting instance does not take into account soft-deleted referential constraints

 

Public bug reported:

The instance hard delete code is new in Train but has a bug noted here:

https://review.opendev.org/#/c/570202/8/nova/db/sqlalchemy/api.py@1804

The hard delete of the instance can fail if there are related soft-
deleted records (like detached volumes [bdms]), because I hit this in a
gate run of the cross-cell resize stuff:

http://paste.openstack.org/show/752057/

'Cannot delete or update a parent row: a foreign key constraint fails
(`nova_cell2`.`block_device_mapping`, CONSTRAINT
`block_device_mapping_instance_uuid_fkey` FOREIGN KEY (`instance_uuid`)
REFERENCES `instances` (`uuid`))') [SQL: 'DELETE FROM instances WHERE
instances.uuid = %(uuid_1)s'] [parameters: {'uuid_1': '4b8a12c4-e28a-
49cc-a681-236c1e8a174c'}]

** Affects: nova
     Importance: Medium
     Assignee: Matt Riedemann (mriedem)
         Status: In Progress


** Tags: db

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

Title:
  Hard deleting instance does not take into account soft-deleted
  referential constraints

Status in OpenStack Compute (nova):
  In Progress

Bug description:
  The instance hard delete code is new in Train but has a bug noted
  here:

  https://review.opendev.org/#/c/570202/8/nova/db/sqlalchemy/api.py@1804

  The hard delete of the instance can fail if there are related soft-
  deleted records (like detached volumes [bdms]), because I hit this in
  a gate run of the cross-cell resize stuff:

  http://paste.openstack.org/show/752057/

  'Cannot delete or update a parent row: a foreign key constraint fails
  (`nova_cell2`.`block_device_mapping`, CONSTRAINT
  `block_device_mapping_instance_uuid_fkey` FOREIGN KEY
  (`instance_uuid`) REFERENCES `instances` (`uuid`))') [SQL: 'DELETE
  FROM instances WHERE instances.uuid = %(uuid_1)s'] [parameters:
  {'uuid_1': '4b8a12c4-e28a-49cc-a681-236c1e8a174c'}]

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


Follow ups