From ca4744c1cb0fcd9888a45f50ecbc5b4549f3a637 Mon Sep 17 00:00:00 2001 From: Jason Kirtland Date: Fri, 10 Jul 2009 21:48:45 +0000 Subject: Implemented recreate() for StaticPool --- lib/sqlalchemy/pool.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'lib/sqlalchemy') diff --git a/lib/sqlalchemy/pool.py b/lib/sqlalchemy/pool.py index 2eabd8572..c4e1af20c 100644 --- a/lib/sqlalchemy/pool.py +++ b/lib/sqlalchemy/pool.py @@ -706,15 +706,16 @@ class NullPool(Pool): def dispose(self): pass - + + class StaticPool(Pool): """A Pool of exactly one connection, used for all requests. - + Reconnect-related functions such as ``recycle`` and connection invalidation (which is also used to support auto-reconnect) are not currently supported by this Pool implementation but may be implemented in a future release. - + """ def __init__(self, creator, **params): @@ -754,6 +755,15 @@ class StaticPool(Pool): self._conn.close() self._conn = None + def recreate(self): + self.log("Pool recreating") + return self.__class__(creator=self._creator, + recycle=self._recycle, + use_threadlocal=self._use_threadlocal, + reset_on_return=self._reset_on_return, + echo=self.echo, + listeners=self.listeners) + def create_connection(self): return self._conn -- cgit v1.2.1