Я пишу приложение на Python, используя SQLAlchemy (и Elixir) с SQLite в качестве базы данных. Я начинаю новую транзакцию, используя код session.begin_transaction()
, но когда я вызываю session.rollback()
, я получаю следующую ошибку:
sqlalchemy.exceptions.OperationalError: (OperationalError) no such savepoint: sa_savepoint_1 u'ROLLBACK TO SAVEPOINT sa_savepoint_1' []
Я также получаю аналогичную ошибку, вызывающую session.commit()
. Из того, что я могу сказать, sqlite поддерживает SAVEPOINTS (http://www.sqlite.org/lang_savepoint.html).
Как заставить вложенные транзакции работать?