aboutsummaryrefslogtreecommitdiffstats
path: root/python/db.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/db.py')
-rw-r--r--python/db.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/python/db.py b/python/db.py
index 3535ad1f..b8e72c7b 100644
--- a/python/db.py
+++ b/python/db.py
@@ -4,11 +4,11 @@ import psycopg2
from psycopg2.extras import DictCursor
from psycopg2 import IntegrityError, DataError
from psycopg2.extensions import register_adapter, AsIs
-from psycopg2.pool import SimpleConnectionPool
+from psycopg2.pool import ThreadedConnectionPool
from sqlalchemy import create_engine
from sqlalchemy.engine.url import URL
import numpy as np
-
+import atexit
class InfDateAdapter:
def __init__(self, wrapped):
@@ -86,10 +86,13 @@ def query_db(conn, sqlstr, params=None, one=True):
r = c.fetchone() if one else c.fetchall()
return r
-serenitas_pool = SimpleConnectionPool(2, 5, database='serenitasdb',
- user='serenitas_user',
- host=os.environ.get("PGHOST", "debian"),
- cursor_factory=None)
+serenitas_pool = ThreadedConnectionPool(3, 5, database='serenitasdb',
+ user='serenitas_user',
+ host=os.environ.get("PGHOST", "debian"),
+ cursor_factory=DictCursor)
+@atexit.register
+def close_db():
+ serenitas_pool.closeall()
serenitas_engine = dbengine('serenitasdb')
dawn_engine = dbengine('dawndb')