Exemple #1
0
def session_query():
    """Provide a transactional scope around a series of operations."""
    sql_db_connect()
    session = SQLDatabase.get_session()
    try:
        yield session
    except IrmaDatabaseError:
        raise
Exemple #2
0
def session_transaction():
    """Provide a transactional scope around a series of operations."""
    # TODO: when used with 'with', session is not commited and usage of vars
    #       such as object.id could not be initialized (None)
    sql_db_connect()
    session = SQLDatabase.get_session()
    try:
        yield session
        session.commit()
    except IrmaDatabaseError:
        session.rollback()
        raise
    finally:
        session.close()