Bug 1041649

Summary: [RFE][cinder]: Cinder DB Archiving
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: RFEsAssignee: RHOS Maint <rhos-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: markmc, yeylon
Target Milestone: ---Keywords: FutureFeature
Target Release: 8.0 (Liberty)   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/cinder/+spec/db-archiving
Whiteboard: upstream_milestone_none upstream_status_not-started upstream_definition_obsolete
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 17:25:57 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 18:29:22 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/cinder/+spec/db-archiving.

Description:

In Nova (Grizzly) we added new feature DB Archiving. 

The problem: 
We actually don't delete rows from db, we mark it only as deleted (we have special column).
So the DB is growing and growing, so this causes problem with performance.

The solution:
Create shadow tables and copy "deleted" rows from main to shadow table. 

Steps to implement:
1) sync utils for work with shadow table (create, check methods)
2) add db migration, that will create all shadow tables
3) write tests for shadowing (for example checking that all shadow tables are up-to-date)
4) add utils to work with shadowing (periodic task, manager method)

 

Specification URL (additional information):

None