When using an SQLite in-memory databases in storm the different stores created from the same database are not modifying the same SQLite database. E.g.
db = storm.locals.create_database('sqlite:') store1 = storm.locals.Store(db) store2 = storm.locals.Store(db)
Here store1 and store2 will not refer to the same database, despite the fact that this is what would be natural. The reason is that SQLite in-memory databases are specific to their connection object. And the connection object is part of the store object, not the database object.
The upshot is that I can't use in-memory databases inside my unittests that easily because the code under tests assumes creating stores is cheap (not caring too much about the caching). Which all kind of sucks.
PS: A whole different rant is about libraries designed for "from foo import ", e.g. storm.locals., fabric.api.*. At least for the later you can do "import fabric.api as fab", "import storm.locals as storm" has it's limitations...