From: Mike Bayer Date: Tue, 12 Feb 2013 02:10:55 +0000 (-0500) Subject: see also for session commit, rollback X-Git-Tag: rel_0_8_0~21^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ce9d61be9b76b93809263d43d679279bd2efd2ec;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git see also for session commit, rollback --- diff --git a/doc/build/orm/session.rst b/doc/build/orm/session.rst index 52119df74d..37314cf4cb 100644 --- a/doc/build/orm/session.rst +++ b/doc/build/orm/session.rst @@ -780,6 +780,8 @@ required after a flush fails, even though the underlying transaction will have been rolled back already - this is so that the overall nesting pattern of so-called "subtransactions" is consistently maintained. +.. _session_committing: + Committing ---------- @@ -818,6 +820,8 @@ model to some degree since the :class:`~sqlalchemy.orm.session.Session` behaves in exactly the same way with regard to attribute state, except no transaction is present. +.. _session_rollback: + Rolling Back ------------ diff --git a/lib/sqlalchemy/orm/session.py b/lib/sqlalchemy/orm/session.py index 27c84cc4e4..00c6d4227f 100644 --- a/lib/sqlalchemy/orm/session.py +++ b/lib/sqlalchemy/orm/session.py @@ -655,6 +655,10 @@ class Session(_SessionClassMethods): to the first real transaction are closed. Subtransactions occur when begin() is called multiple times. + .. seealso:: + + :ref:`session_rollback` + """ if self.transaction is None: pass @@ -678,11 +682,16 @@ class Session(_SessionClassMethods): multiple times), the subtransaction will be closed, and the next call to ``commit()`` will operate on the enclosing transaction. - For a session configured with autocommit=False, a new transaction will + When using the :class:`.Session` in its default mode of + ``autocommit=False``, a new transaction will be begun immediately after the commit, but note that the newly begun transaction does *not* use any connection resources until the first SQL is actually emitted. + .. seealso:: + + :ref:`session_committing` + """ if self.transaction is None: if not self.autocommit: