[openstack-dev] Promoting healing script to scheme migration script?

Johannes Erdfelt johannes at erdfelt.com
Mon Jun 9 15:07:36 UTC 2014


On Mon, Jun 09, 2014, Jakub Libosvar <libosvar at redhat.com> wrote:
> I'd like to get some opinions on following idea:
> 
> Because currently we have (thanks to Ann) WIP of healing script capable
> of changing database scheme by comparing tables in the database to
> models in current codebase, I started to think whether it could be used
> generally to db upgrades instead of "generating" migration scripts.

Do you have a link to these healing scripts?

> If I understand correctly the purpose of migration scripts used to be to:
> 1) separate changes according plugins
> 2) upgrade database scheme
> 3) migrate data according the changed scheme
> 
> Since we dropped on conditional migrations, we can cross out no.1).
> The healing script is capable of doing no.2) without any manual effort
> and without adding migration script.
> 
> That means if we will decide to go along with using script for updating
> database scheme, migration scripts will be needed only for data
> migration (no.3)) which are from my experience rare.
> 
> Also other benefit would be that we won't need to store all database
> models from Icehouse release which we probably will need in case we want
> to "heal" database in order to achieve idempotent Icehouse database
> scheme with Juno codebase.
> 
> Please share your ideas and reveal potential glitches in the proposal.

I'm actually working on a project to implement declarative schema
migrations for Nova using the existing model we currently maintain.

The main goals for our project are to reduce the amount of work
maintaining the database schema but also to reduce the amount of
downtime during software upgrades by doing schema changes online (where
possible).

I'd like to see what other haves done and are working on the future so
we don't unnecessarily duplicate work :)

JE




More information about the OpenStack-dev mailing list