I've also found this as well, which references the previous link: http://www.mail-archive.com/[email protected]/msg15411.html
2009/11/2 Jon Black <[email protected]> > A quick search on google revealed this: > http://74.125.77.132/search?q=cache:YB8OTfrO6xAJ:itsystementwicklung.de/pipermail/list-pysqlite/2009-June/000414.html+pipermail/list-pysqlite/2009-June/000414.html&cd=1&hl=nl&ct=clnk&gl=nl&client=firefox-a > > Whilst the solution doesn't help, it does mention that it's not supported > in pysqlite. So perhaps we need to talk with them? > > 2009/11/1 Michael Bayer <[email protected]> > > >> >> On Nov 1, 2009, at 4:13 AM, Jon wrote: >> >> > >> > I'm writing an application in python using sqlalchemy (and Elixir) >> > with sqlite as the database backend. I start a new transaction using >> > the code session.begin_transaction(), but when I call session.rollback >> > () I get the following error: >> > >> > sqlalchemy.exceptions.OperationalError: (OperationalError) no such >> > savepoint: sa_savepoint_1 u'ROLLBACK TO SAVEPOINT sa_savepoint_1' [] >> > >> > I also get a similar error calling session.commit(). From what I can >> > tell, sqlite supports SAVEPOINTS (http://www.sqlite.org/ >> > lang_savepoint.html). >> > >> > So, how do I get nested transactions to work? >> > >> > I've also posted the question on stack overflow, so you can reply >> > there if you like, or here, I don't mind. >> >> our current tests disable SAVEPOINT testing for the sqlite3 DBAPI, as >> it does not appear to understand the "SAVEPOINT" instruction. If I >> enable a simple SAVEPOINT test, I get this output: >> >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: BEGIN >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: INSERT INTO query_users >> (user_id, user_name) VALUES (?, ?) >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: [1, 'user1'] >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: SAVEPOINT sa_savepoint_1 >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: [] >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: INSERT INTO query_users >> (user_id, user_name) VALUES (?, ?) >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: [2, 'user2'] >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: RELEASE SAVEPOINT >> sa_savepoint_1 >> sqlalchemy.engine.base.Engine.0x...fd50: INFO: [] >> >> and then the same error you're getting, i.e. >> >> OperationalError: (OperationalError) no such savepoint: sa_savepoint_1 >> u'RELEASE SAVEPOINT sa_savepoint_1' [] >> >> If you can research for us the correct way for the pysqlite DBAPI to >> understand a SAVEPOINT conversation, it can be implemented. >> >> >> >> >> > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---
