]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
dont call connection()/get_bind() all that here if we don't have to
authorMike Bayer <mike_mp@zzzcomputing.com>
Wed, 13 Jun 2012 14:13:17 +0000 (10:13 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Wed, 13 Jun 2012 14:13:17 +0000 (10:13 -0400)
lib/sqlalchemy/orm/persistence.py

index 55b9bf84a1d4eadcaf24cbb4d165fe183612e9e7..e73e97d3c612b22cea70f03780c4707946621e19 100644 (file)
@@ -748,13 +748,15 @@ def _connections_for_states(base_mapper, uowtransaction, states):
         connection_callable = \
                 uowtransaction.session.connection_callable
     else:
-        connection = uowtransaction.transaction.connection(
-                                                    base_mapper)
+        connection = None
         connection_callable = None
 
     for state in _sort_states(states):
         if connection_callable:
             connection = connection_callable(base_mapper, state.obj())
+        elif not connection:
+            connection = uowtransaction.transaction.connection(
+                                                    base_mapper)
 
         mapper = _state_mapper(state)