Bug 1041000 - [RFE][nova]: Need implementation of purge engine for db.
Summary: [RFE][nova]: Need implementation of purge engine for db.
Keywords:
Status: CLOSED DUPLICATE of bug 1177348
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-nova
Version: unspecified
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: ---
Assignee: Dan Smith
QA Contact: yeylon@redhat.com
URL: https://blueprints.launchpad.net/nova...
Whiteboard: upstream_milestone_next upstream_stat...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-12 13:23 UTC by RHOS Integration
Modified: 2019-09-09 14:59 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-07-29 20:08:40 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description RHOS Integration 2013-12-12 13:23:11 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/db-purge-engine.

Description:

There are several points:

1) Nova & other core projects never delete data from the DBs and uses only soft deleting (There is special column in each table that indicates that entry is deleted).

2) To purge soft deleted records you have to get direct access to DB and do it manually by own script. Or use db-archiving feature that allows you to move soft deleted records from main to shadow tables. But db-archiving:
a) works very slow and as there is a complex logic around moving records from one table to another (we are not able to improve this)
b) db-archiving doesn’t take in account relationships between Tables. 
c) db-archiving was implemented in Grizzly, during havana we found and fixed a lot of critical bugs, and didn’t see any bug reports form other, seems like nobody use it in production. 
d) We didn’t find use cases for db-archiving.

3) Everybody that use OpenStack in production have some db purge script. 

Due to these facts we should implement one purge engine that will be available out of box. This purge engine will cleanup  considering of tables relationship. Implementation will be based on sql requests that do all work inside DB (without downloading all DB data) to improve deletions speed. 

Purge engine's part of tables relationship control could be used next time to improve shadow tables.

This functionality will be available for administrators through the REST api. And probably we should think about periodic task that will cleanup DB. 

Specification URL (additional information):

None

Comment 3 Stephen Gordon 2015-07-29 20:08:40 UTC

*** This bug has been marked as a duplicate of bug 1177348 ***


Note You need to log in before you can comment on or make changes to this bug.