sqlobject transactions
When trying to figure out how to use transactions in sqlobject, I found this code snippet.
As a bonus my init database code now runs twice as fast. Yah!
As a bonus my init database code now runs twice as fast. Yah!
def do_in_transaction(func, *args, **kw):
old_conn = sqlhub.getConnection()
conn = old_conn.transaction()
sqlhub.threadConnection = conn
try:
try:
value = func(*args, **kw)
except:
conn.rollback()
raise
else:
conn.commit()
return value
finally:
sqlhub.threadConnection = old_conn
# do_in_transaction(some_function_with_sqlobject_stuff_in_it)
# I needed to change my connection line to this. That is assign something
# to the processConnection thing in sqlhub.
# sqlhub.processConnection = db_connection = __connection__ = connectionForURI(config.conn)
Comments