class RootTransaction(Transaction):
Known subclasses: sqlalchemy.engine.base.TwoPhaseTransaction
Represent the "root" transaction on a _engine.Connection
.
This corresponds to the current "BEGIN/COMMIT/ROLLBACK" that's occurring
for the _engine.Connection
. The _engine.RootTransaction
is created by calling upon the _engine.Connection.begin
method, and
remains associated with the _engine.Connection
throughout its
active span. The current _engine.RootTransaction
in use is
accessible via the _engine.Connection.get_transaction
method of
_engine.Connection
.
In :term:`2.0 style` use, the _future.Connection
also employs
"autobegin" behavior that will create a new
_engine.RootTransaction
whenever a connection in a
non-transactional state is used to emit commands on the DBAPI connection.
The scope of the _engine.RootTransaction
in 2.0 style
use can be controlled using the _future.Connection.commit
and
_future.Connection.rollback
methods.
Method | __init__ |
Undocumented |
Method | _close_impl |
Undocumented |
Method | _connection_begin_impl |
Undocumented |
Method | _connection_commit_impl |
Undocumented |
Method | _connection_rollback_impl |
Undocumented |
Method | _deactivate_from_connection |
Undocumented |
Method | _do_close |
Undocumented |
Method | _do_commit |
Undocumented |
Method | _do_deactivate |
do whatever steps are necessary to set this transaction as "deactive", however leave this transaction object in place as far as the connection's state. |
Method | _do_rollback |
Undocumented |
Class Variable | __slots__ |
Undocumented |
Class Variable | _is_root |
Undocumented |
Instance Variable | connection |
Undocumented |
Instance Variable | is_active |
Undocumented |
Property | _deactivated_from_connection |
True if this transaction is totally deactivated from the connection and therefore can no longer affect its state. |
Inherited from Transaction
:
Method | _get_subject |
Undocumented |
Method | _rollback_can_be_called |
indicates the object is in a state that is known to be acceptable for rollback() to be called. |
Method | _transaction_is_active |
Undocumented |
Method | _transaction_is_closed |
Undocumented |
Method | close |
Close this .Transaction . |
Method | commit |
Commit this .Transaction . |
Method | rollback |
Roll back this .Transaction . |
Property | is_valid |
Undocumented |
Inherited from TransactionalContext
(via Transaction
):
Class Method | _trans_ctx_check |
Undocumented |
Method | __enter__ |
Undocumented |
Method | __exit__ |
Undocumented |
Instance Variable | _outer_trans_ctx |
Undocumented |
Instance Variable | _trans_subject |
Undocumented |
sqlalchemy.engine.base.TwoPhaseTransaction
Undocumented
sqlalchemy.engine.base.TwoPhaseTransaction
Undocumented
sqlalchemy.engine.base.TwoPhaseTransaction
Undocumented
sqlalchemy.engine.base.TwoPhaseTransaction
Undocumented
do whatever steps are necessary to set this transaction as "deactive", however leave this transaction object in place as far as the connection's state.
for a "real" transaction this should roll back the transaction and ensure this transaction is no longer a reset agent.
this is used for nesting of marker transactions where the marker can set the "real" transaction as rolled back, however it stays in place.
for 2.0 we hope to remove this nesting feature.