From 42a65014f8cf39d29ca9e411e511b613a3ffa446 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gunnlaugur=20=C3=9E=C3=B3r=20Briem?= Date: Thu, 21 Aug 2014 18:42:08 +0000 Subject: Add note on begin_nested requiring rollback/commit Avoid confusion about rollback/commit "must be issued" after ``session.begin_nested()`` --- this might be taken to mean call must be *added*, but that's only true if not using the return value as a context manager. --- doc/build/orm/session.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/build/orm/session.rst b/doc/build/orm/session.rst index b47e70d53..78ae1ba81 100644 --- a/doc/build/orm/session.rst +++ b/doc/build/orm/session.rst @@ -1773,7 +1773,10 @@ method:: of times, which will issue a new SAVEPOINT with a unique identifier for each call. For each :meth:`~.Session.begin_nested` call, a corresponding :meth:`~.Session.rollback` or -:meth:`~.Session.commit` must be issued. +:meth:`~.Session.commit` must be issued. (But note that if the return value is +used as a context manager, i.e. in a with-statement, then this rollback/commit +is issued by the context manager upon exiting the context, and so should not be +added explicitly.) When :meth:`~.Session.begin_nested` is called, a :meth:`~.Session.flush` is unconditionally issued -- cgit v1.2.1