From 732fb99fc0afbeb69d684b2bfa6d0be6250919a3 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Tue, 21 Apr 2015 11:04:21 -0400 Subject: - add a warning to SingletonThreadPool that it isn't for general use --- lib/sqlalchemy/pool.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'lib/sqlalchemy') diff --git a/lib/sqlalchemy/pool.py b/lib/sqlalchemy/pool.py index fc899ba30..999cc1120 100644 --- a/lib/sqlalchemy/pool.py +++ b/lib/sqlalchemy/pool.py @@ -810,6 +810,19 @@ class SingletonThreadPool(Pool): Maintains one connection per each thread, never moving a connection to a thread other than the one which it was created in. + .. warning:: the :class:`.SingletonThreadPool` will call ``.close()`` + on arbitrary connections that exist beyond the size setting of + ``pool_size``, e.g. if more unique **thread identities** + than what ``pool_size`` states are used. This cleanup is + non-deterministic and not sensitive to whether or not the connections + linked to those thread identities are currently in use. + + :class:`.SingletonThreadPool` may be improved in a future release, + however in its current status it is generally used only for test + scenarios using a SQLite ``:memory:`` database and is not recommended + for production use. + + Options are the same as those of :class:`.Pool`, as well as: :param pool_size: The number of threads in which to maintain connections -- cgit v1.2.1