On Wed, Feb 01, 2012 at 03:28:30PM +0100, Daniel Dehennin wrote: > Rebuildd().sqlconnection.close()
Aha, got it. You've stumbled upon a subtle bug in SQLiteConnection. SQLiteConnection uses a different (from its parent class DBAPI) implementation of .getConnection() and maintain its own pool - ._threadPool along with DBAPI._pool. But it doesn't clear the pool on .close(). The quick-and-dirty solution for you is to clear the pool yourself: Rebuildd().sqlconnection.close() Rebuildd().sqlconnection._threadPool = {} I'll add a proper .close() to SQLiteConnection. > sqlobject.sqlhub.processConnection = Rebuildd().sqlconnection You preserve an old SQLiteConnection, so you don't need the following: > sqlobject.dbconnection.TheURIOpener.cachedURIs={} The workaround is for the case when you want to create a new SQLiteConnection like this: Rebuildd().sqlconnection = connectionForURI(...) And, BTW, this > os.unlink("/tmp/rebuildd-tests.db") is just Rebuildd().sqlconnection.dropDatabase() Oleg. -- Oleg Broytman http://phdru.name/ p...@phdru.name Programmers don't die, they just GOSUB without RETURN. ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ sqlobject-discuss mailing list sqlobject-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss