From: Daniele Varrazzo Date: Thu, 25 Feb 2021 17:31:16 +0000 (+0100) Subject: Make psycopg3.pool a package X-Git-Tag: 3.0.dev0~87^2~47 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=833f94b67c5d39a42e252b840959ec325d8f23d9;p=thirdparty%2Fpsycopg.git Make psycopg3.pool a package --- diff --git a/psycopg3/psycopg3/pool/__init__.py b/psycopg3/psycopg3/pool/__init__.py new file mode 100644 index 000000000..222d89d8b --- /dev/null +++ b/psycopg3/psycopg3/pool/__init__.py @@ -0,0 +1,9 @@ +""" +psycopg3 connection pool package +""" + +# Copyright (C) 2021 The Psycopg Team + +from .pool import ConnectionPool, PoolClosed, PoolTimeout + +__all__ = ["ConnectionPool", "PoolClosed", "PoolTimeout"] diff --git a/psycopg3/psycopg3/pool.py b/psycopg3/psycopg3/pool/pool.py similarity index 99% rename from psycopg3/psycopg3/pool.py rename to psycopg3/psycopg3/pool/pool.py index bf944477f..6d43a009c 100644 --- a/psycopg3/psycopg3/pool.py +++ b/psycopg3/psycopg3/pool/pool.py @@ -1,5 +1,5 @@ """ -psycopg3 connection pool +psycopg3 synchronous connection pool """ # Copyright (C) 2021 The Psycopg Team @@ -15,15 +15,16 @@ from weakref import ref from contextlib import contextmanager from collections import deque -from . import errors as e -from .pq import TransactionStatus -from ._sched import Scheduler -from .connection import Connection +from .. import errors as e +from ..pq import TransactionStatus +from ..connection import Connection -WORKER_TIMEOUT = 60.0 +from .sched import Scheduler logger = logging.getLogger(__name__) +WORKER_TIMEOUT = 60.0 + class PoolTimeout(e.OperationalError): pass diff --git a/psycopg3/psycopg3/_sched.py b/psycopg3/psycopg3/pool/sched.py similarity index 98% rename from psycopg3/psycopg3/_sched.py rename to psycopg3/psycopg3/pool/sched.py index 040a70c1f..7c54b12f7 100644 --- a/psycopg3/psycopg3/_sched.py +++ b/psycopg3/psycopg3/pool/sched.py @@ -18,7 +18,7 @@ from time import monotonic from heapq import heappush, heappop from typing import Any, Callable, List, Optional, NamedTuple -logger = logging.getLogger("psycopg3.sched") +logger = logging.getLogger(__name__) class Task(NamedTuple): diff --git a/tests/test_pool.py b/tests/pool/test_pool.py similarity index 97% rename from tests/test_pool.py rename to tests/pool/test_pool.py index 93d10580b..2dc185468 100644 --- a/tests/test_pool.py +++ b/tests/pool/test_pool.py @@ -484,7 +484,7 @@ def test_grow(dsn, monkeypatch): @pytest.mark.slow def test_shrink(dsn, monkeypatch): - orig_run = pool.ShrinkPool._run + orig_run = pool.pool.ShrinkPool._run results = [] def run_hacked(self, pool): @@ -493,7 +493,7 @@ def test_shrink(dsn, monkeypatch): n1 = pool._nconns results.append((n0, n1)) - monkeypatch.setattr(pool.ShrinkPool, "_run", run_hacked) + monkeypatch.setattr(pool.pool.ShrinkPool, "_run", run_hacked) p = pool.ConnectionPool(dsn, minconn=2, maxconn=4, max_idle=0.2) assert p.max_idle == 0.2 @@ -519,10 +519,10 @@ def test_shrink(dsn, monkeypatch): def test_reconnect(proxy, caplog, monkeypatch): caplog.set_level(logging.WARNING, logger="psycopg3.pool") - assert pool.AddConnection.INITIAL_DELAY == 1.0 - assert pool.AddConnection.DELAY_JITTER == 0.1 - monkeypatch.setattr(pool.AddConnection, "INITIAL_DELAY", 0.1) - monkeypatch.setattr(pool.AddConnection, "DELAY_JITTER", 0.0) + assert pool.pool.AddConnection.INITIAL_DELAY == 1.0 + assert pool.pool.AddConnection.DELAY_JITTER == 0.1 + monkeypatch.setattr(pool.pool.AddConnection, "INITIAL_DELAY", 0.1) + monkeypatch.setattr(pool.pool.AddConnection, "DELAY_JITTER", 0.0) proxy.start() p = pool.ConnectionPool(proxy.client_dsn, minconn=1, setup_timeout=2.0) diff --git a/tests/test_sched.py b/tests/pool/test_sched.py similarity index 98% rename from tests/test_sched.py rename to tests/pool/test_sched.py index 4ee7cafa6..3b227abba 100644 --- a/tests/test_sched.py +++ b/tests/pool/test_sched.py @@ -5,7 +5,7 @@ from threading import Thread import pytest -from psycopg3._sched import Scheduler +from psycopg3.pool.sched import Scheduler @pytest.mark.slow