[openstack-dev] [keystone] sqlite doesn't support migrations

Dolph Mathews dolph.mathews at gmail.com
Mon Jul 15 16:21:56 UTC 2013

On Fri, Jul 12, 2013 at 3:19 PM, Monty Taylor <mordred at inaugust.com> wrote:

> On 07/11/2013 01:12 PM, Dolph Mathews wrote:
> > Just as a general statement, outside the scope of openstack, I don't
> > think sqlite is intended to support schema evolution. From the sqlite
> > docs [1]: "SQLite supports a limited subset of ALTER TABLE. [...] It is
> > not possible to rename a column, remove a column, or add or remove
> > constraints from a table."
> >
> > We've been through hell trying to support migrations on sqlite, because
> > we test against sqlite, and because we test our migrations... on sqlite.
> > So, we've already shot ourselves in the foot. We're clearly moving
> > towards gating against mysql + postgresql, so in the mean time, let's
> > limit the amount of effort we put into further support sqlite migrations
> > until we can safely rip it out altogether.
> >
> > [1]: http://www.sqlite.org/lang_altertable.html
> I agree. The reason to use sqlite in unitests and stuff is because it's
> easy and doesn't require users and system things and everything. If
> we're spending extra effort to maintain the simple thing, then it's
> probably not a simple thing.

I agree that it's easy for unit & functional testing. It's a simple
solution and works fairly well, although I know we'd catch more issues if
we ran our functional tests against a database that supported static
typing, real booleans, etc.

> As an aside, (ignore the fact that I'm a former Drizzle core dev) it
> might be worthwhile taking 30 minutes one day and exploring a drizzle
> database test fixture. One of the things we did in drizzle was make it
> not need any bootstrapping and to work sanely with no config files ...
> so launching a drizzle on a spare port, running database tests against
> it and then deleting it should actually be super simple - and at the
> worst no harder than doing what glance does in their functional tests.

That sounds like an viable improvement over sqlite in general...
unfortunately, the drizzle site appears to be unmaintained? (at least at
the moment) The documentation link [1] from here [2] returns a 404, and
these docs [3] return a 403. Launchpad bug activity [4] doesn't seem
particularly active either :-/

[1] http://docs.drizzle.org/
[2] http://www.drizzle.org/content/documentation
[3] https://drizzle.readthedocs.org/en/latest/

> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130715/b170049f/attachment.html>

More information about the OpenStack-dev mailing list