[openstack-dev] [Keystone] SQLite support (migrations, work-arounds, and more), is it worth it?

Clint Byrum clint at fewbar.com
Mon Apr 6 16:06:08 UTC 2015


Excerpts from Boris Bobrov's message of 2015-04-03 18:29:08 -0700:
> On Saturday 04 April 2015 03:55:59 Morgan Fainberg wrote:
> > I am looking forward to the Liberty cycle and seeing the special casing we
> > do for SQLite in our migrations (and elsewhere). My inclination is that we
> > should (similar to the deprecation of eventlet) deprecate support for
> > SQLite in Keystone. In Liberty we will have a full functional test suite
> > that can (and will) be used to validate everything against much more real
> > environments instead of in-process “eventlet-like” test-keystone-services;
> > the “Restful test cases” will no longer be part of the standard unit tests
> > (as they are functional testing). With this change I’m inclined to say
> > SQLite (being the non-production usable DB) what it is we should look at
> > dropping migration support for SQLite and the custom work-arounds.
> > 
> > Most deployers and developers (as far as I know) use devstack and MySQL or
> > Postgres to really suss out DB interactions.
> > 
> > I am looking for feedback from the community on the general stance for
> > SQLite, and more specifically the benefit (if any) of supporting it in
> > Keystone.
> 
> +1. Drop it and clean up tons of code used for support of sqlite only.
> 
> Doing tests with mysql is as easy, as with sqlite ("mysqladmin drop -f; 
> mysqladmin create" for "reset"), and using it by default will finally make 
> people test their code on real rdbmses.
> 

Please please please be careful with that and make sure the database
name is _always_ random in tests... or even better, write a fixture to
spin up a mysqld inside a private tempdir. That would be a really cool
thing for oslo.db to provide actually.

I'm just thinking some poor sap runs the test suite with the wrong
.my.cnf in the wrong place and <poof> there went keystone's db.



More information about the OpenStack-dev mailing list