summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/pool.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/sqlalchemy/pool.py b/lib/sqlalchemy/pool.py
index fa9582010..a5b06f63a 100644
--- a/lib/sqlalchemy/pool.py
+++ b/lib/sqlalchemy/pool.py
@@ -536,7 +536,8 @@ class SingletonThreadPool(Pool):
def _cleanup(self):
while len(self._all_conns) > self.size:
- self._all_conns.pop()
+ c = self._all_conns.pop()
+ c.close()
def status(self):
return "SingletonThreadPool id:%d size: %d" % \
@@ -655,6 +656,7 @@ class QueuePool(Pool):
try:
self._pool.put(conn, False)
except sqla_queue.Full:
+ conn.close()
if self._overflow_lock is None:
self._overflow -= 1
else: