[openstack-dev] [nova][heat] sqlalchemy-migrate tool to alembic

John Garbutt john at johngarbutt.com
Thu May 14 09:44:35 UTC 2015


On 14 May 2015 at 07:18, Manickam, Kanagaraj <kanagaraj.manickam at hp.com> wrote:
> Hi Nova team,
>
> This mail is regarding an help required on the migration from
> sqlalchemy migration tool  to alembic tool.
>
> Heat is currently using sqlalchemy-migration tool and In liberty release,
> we are investigating on how to bring the alembic into heat. We found that
> nova has already tried the same (https://review.openstack.org/#/c/15196/ )
> almost 2 years back and in Kilo release, nova is still using sqlalchemy
> migration tool.
> (https://github.com/openstack/nova/tree/master/nova/db/sqlalchemy/migrate_repo/versions)
>
> So we are assuming that, in nova, you might have faced blockers to bring in
> alembic.
> And we would like to seek your  recommendation/suggestions based
> on your experience on this.  This will help us to take proper direction
> on using alembic in heat. Could you kindly share it.

We are currently looking at going this direction (its not merged yet though):
http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/online-schema-changes.html

If we get that working, we wouldn't need to write or generate any
migrations, we end up doing a "diff" between the desired state and the
current database state, and split that into expand and contract
phases.

To support that approach, we are no longer doing any data migrations
in our migration scripts, they are happening in a different way,
"online":
http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/flavor-from-sysmeta-to-blob.html#other-deployer-impact

There are more details on how this is all planned to fit together here:
http://docs.openstack.org/developer/nova/devref/upgrade.html

Anyways, this is why we have paused the alembic vs sqlalchemy debate
for the moment.

Does that help?

Thanks,
John



More information about the OpenStack-dev mailing list