summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine/threadlocal.py
diff options
context:
space:
mode:
authorJonathan Beluch <jbeluch@squarespace.com>2016-08-23 15:10:53 -0400
committerJonathan Beluch <jbeluch@squarespace.com>2016-08-24 14:16:10 -0400
commitedf8380b90f60f8e7a4f7b0d5edef5c4aa563279 (patch)
tree67809ad2997f0fc874d1e7b62cef9d6a81dece9a /lib/sqlalchemy/engine/threadlocal.py
parentf10eba00ea7c92315b4b39c69627058ad4931448 (diff)
downloadsqlalchemy-pr/301.tar.gz
Fix conn close behavior for thread local connectionspr/301
Diffstat (limited to 'lib/sqlalchemy/engine/threadlocal.py')
-rw-r--r--lib/sqlalchemy/engine/threadlocal.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/sqlalchemy/engine/threadlocal.py b/lib/sqlalchemy/engine/threadlocal.py
index 505d1fadd..badfde8dd 100644
--- a/lib/sqlalchemy/engine/threadlocal.py
+++ b/lib/sqlalchemy/engine/threadlocal.py
@@ -64,6 +64,8 @@ class TLEngine(base.Engine):
self.pool.connect, connection),
**kw)
self._connections.conn = weakref.ref(connection)
+ else:
+ connection.should_close_with_result = kw.get('close_with_result', False)
return connection._increment_connect()
@@ -81,11 +83,9 @@ class TLEngine(base.Engine):
self.contextual_connect().begin_nested())
return self
- def begin(self):
- if not hasattr(self._connections, 'trans'):
- self._connections.trans = []
- self._connections.trans.append(self.contextual_connect().begin())
- return self
+ def begin(self, close_with_result=False):
+ conn = self.contextual_connect()
+ return base.Engine._trans_ctx(conn, conn.begin(), close_with_result)
def __enter__(self):
return self