roodjong / roodjong/symfexit

symfexit-worker hogs all database connections over time, not closing properly?

Open
#331 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
3
Forks
0
Avg merge
6d 9h
Merged PRs (30d)
3

Description

Not sure what happened here but it needed a restart.

Jun 07 17:43:15 pannenkoek python[40575]: Internal Server Error: /admin/membership/membershiptype/
Jun 07 17:43:15 pannenkoek python[40575]: Traceback (most recent call last):
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 279, in ensure_conn>
Jun 07 17:43:15 pannenkoek python[40575]:     self.connect()
Jun 07 17:43:15 pannenkoek python[40575]:     ~~~~~~~~~~~~^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 256, in connect
Jun 07 17:43:15 pannenkoek python[40575]:     self.connection = self.get_new_connection(conn_params)
Jun 07 17:43:15 pannenkoek python[40575]:                       ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/postgresql/base.py", line 333, in get_n>
Jun 07 17:43:15 pannenkoek python[40575]:     connection = self.Database.connect(**conn_params)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/psycopg/connection.py", line 130, in connect
Jun 07 17:43:15 pannenkoek python[40575]:     raise new_ex.with_traceback(None)
Jun 07 17:43:15 pannenkoek python[40575]: psycopg.OperationalError: connection failed: connection to server at "127.0.0.1", port 5432 failed: FATAL:  remaining conne>
Jun 07 17:43:15 pannenkoek python[40575]: Multiple connection attempts failed. All failures were:
Jun 07 17:43:15 pannenkoek python[40575]: - host: 'localhost', port: None, hostaddr: '::1': connection failed: connection to server at "::1", port 5432 failed: FATAL>
Jun 07 17:43:15 pannenkoek python[40575]: - host: 'localhost', port: None, hostaddr: '127.0.0.1': connection failed: connection to server at "127.0.0.1", port 5432 f>
Jun 07 17:43:15 pannenkoek python[40575]: The above exception was the direct cause of the following exception:
Jun 07 17:43:15 pannenkoek python[40575]: Traceback (most recent call last):
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 557, in thread_handler
Jun 07 17:43:15 pannenkoek python[40575]:     raise exc_info[1]
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/core/handlers/exception.py", line 42, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     response = await get_response(request)
Jun 07 17:43:15 pannenkoek python[40575]:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/deprecation.py", line 321, in __acall__
Jun 07 17:43:15 pannenkoek python[40575]:     response = await sync_to_async(
Jun 07 17:43:15 pannenkoek python[40575]:                ^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:     ...<2 lines>...
Jun 07 17:43:15 pannenkoek python[40575]:     )(request)
Jun 07 17:43:15 pannenkoek python[40575]:     ^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 506, in __call__
Jun 07 17:43:15 pannenkoek python[40575]:     ret = await asyncio.shield(exec_coro)
Jun 07 17:43:15 pannenkoek python[40575]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/.local/share/uv/python/cpython-3.14.4-linux-aarch64-gnu/lib/python3.14/concurrent/futures/thread.py", >
Jun 07 17:43:15 pannenkoek python[40575]:     result = ctx.run(self.task)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/.local/share/uv/python/cpython-3.14.4-linux-aarch64-gnu/lib/python3.14/concurrent/futures/thread.py", >
Jun 07 17:43:15 pannenkoek python[40575]:     return fn(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 561, in thread_handler
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 45, in process_re>
Jun 07 17:43:15 pannenkoek python[40575]:     tenant = self.get_tenant(domain_model, hostname)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 29, in get_tenant
Jun 07 17:43:15 pannenkoek python[40575]:     domain = domain_model.objects.select_related('tenant').get(domain=hostname)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 635, in get
Jun 07 17:43:15 pannenkoek python[40575]:     num = len(clone)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 372, in __len__
Jun 07 17:43:15 pannenkoek python[40575]:     self._fetch_all()
Jun 07 17:43:15 pannenkoek python[40575]:     ~~~~~~~~~~~~~~~^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 2000, in _fetch_all
Jun 07 17:43:15 pannenkoek python[40575]:     self._result_cache = list(self._iterable_class(self))
Jun 07 17:43:15 pannenkoek python[40575]:                          ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 95, in __iter__
Jun 07 17:43:15 pannenkoek python[40575]:     results = compiler.execute_sql(
Jun 07 17:43:15 pannenkoek python[40575]:         chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size
Jun 07 17:43:15 pannenkoek python[40575]:     )
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/sql/compiler.py", line 1622, in execute_s>
Jun 07 17:43:15 pannenkoek python[40575]:     cursor = self.connection.cursor()
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 320, in cursor
Jun 07 17:43:15 pannenkoek python[40575]:     return self._cursor()
Jun 07 17:43:15 pannenkoek python[40575]:            ~~~~~~~~~~~~^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/postgresql_backend/base.py", line 144, in _>
Jun 07 17:43:15 pannenkoek python[40575]:     cursor = super()._cursor()
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 296, in _cursor
Jun 07 17:43:15 pannenkoek python[40575]:     self.ensure_connection()
Jun 07 17:43:15 pannenkoek python[40575]:     ~~~~~~~~~~~~~~~~~~~~~~^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 278, in ensure_conn>
Jun 07 17:43:15 pannenkoek python[40575]:     with self.wrap_database_errors:
Jun 07 17:43:15 pannenkoek python[40575]:          ^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/utils.py", line 94, in __exit__
Jun 07 17:43:15 pannenkoek python[40575]:     raise dj_exc_value.with_traceback(traceback) from exc_value
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 279, in ensure_conn>
Jun 07 17:43:15 pannenkoek python[40575]:     self.connect()
Jun 07 17:43:15 pannenkoek python[40575]:     ~~~~~~~~~~~~^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 256, in connect
Jun 07 17:43:15 pannenkoek python[40575]:     self.connection = self.get_new_connection(conn_params)
Jun 07 17:43:15 pannenkoek python[40575]:                       ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:15 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/postgresql/base.py", line 333, in get_n>
Jun 07 17:43:15 pannenkoek python[40575]:     connection = self.Database.connect(**conn_params)
Jun 07 17:43:15 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/psycopg/connection.py", line 130, in connect
Jun 07 17:43:15 pannenkoek python[40575]:     raise new_ex.with_traceback(None)
Jun 07 17:43:15 pannenkoek python[40575]: django.db.utils.OperationalError: connection failed: connection to server at "127.0.0.1", port 5432 failed: FATAL:  remaini>
Jun 07 17:43:15 pannenkoek python[40575]: Multiple connection attempts failed. All failures were:
Jun 07 17:43:15 pannenkoek python[40575]: - host: 'localhost', port: None, hostaddr: '::1': connection failed: connection to server at "::1", port 5432 failed: FATAL>
Jun 06 06:00:23 pannenkoek systemd[1]: Started symfexit.service - Symfexit.
Jun 06 06:00:24 pannenkoek python[898]: INFO:     Loading environment from '/home/deploy/symfexit/.env'
Jun 06 06:00:24 pannenkoek python[898]: App init: no django-storages backend configured, using default (local) storage backend if set, otherwise you need to manage f>
Jun 06 06:00:24 pannenkoek python[898]: Registered payment processor dummy with priority 0
Jun 06 06:00:25 pannenkoek python[898]: Registered payment processor mollie with priority 100
Jun 06 06:00:25 pannenkoek python[898]: INFO:     Started server process [898]
Jun 06 06:00:25 pannenkoek python[898]: INFO:     Waiting for application startup.
Jun 06 06:00:25 pannenkoek python[898]: INFO:     ASGI 'lifespan' protocol appears unsupported.
Jun 06 06:00:25 pannenkoek python[898]: INFO:     Application startup complete.
Jun 06 06:00:25 pannenkoek python[898]: INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
Jun 06 09:32:40 pannenkoek python[898]: INFO:     216.38.230.115:0 - "GET / HTTP/1.1" 302 Found
Jun 06 09:32:41 pannenkoek python[898]: INFO:     216.38.230.116:0 - "GET /accounts/login/?next=/ HTTP/1.1" 200 OK
Jun 06 09:32:42 pannenkoek python[898]: INFO:     216.38.230.114:0 - "GET / HTTP/1.1" 302 Found
Jun 06 09:32:42 pannenkoek python[898]: INFO:     216.38.230.114:0 - "GET /accounts/login/?next=/ HTTP/1.1" 200 OK
Jun 06 09:32:42 pannenkoek python[898]: Not Found: /favicon.ico
Jun 06 09:32:42 pannenkoek python[898]: INFO:     216.38.230.114:0 - "GET /favicon.ico HTTP/1.1" 404 Not Found
Jun 06 09:32:48 pannenkoek python[898]: INFO:     216.38.230.118:0 - "HEAD /accounts/login/?next=/sitemap.xml HTTP/1.1" 200 OK
Jun 06 11:49:10 pannenkoek python[898]: Not Found: /.env
Jun 06 11:49:10 pannenkoek python[898]: INFO:     176.65.139.232:0 - "GET /.env HTTP/1.1" 404 Not Found
Jun 06 21:38:46 pannenkoek python[898]: INFO:     194.45.199.175:0 - "GET / HTTP/1.1" 302 Found
Jun 06 21:38:46 pannenkoek python[898]: INFO:     194.45.199.175:0 - "GET /accounts/login/?next=/ HTTP/1.1" 200 OK
Jun 07 04:19:03 pannenkoek python[898]: INFO:     176.65.139.238:0 - "GET / HTTP/1.1" 302 Found
Jun 07 04:19:03 pannenkoek python[898]: INFO:     176.65.139.238:0 - "GET /accounts/login/ HTTP/1.1" 200 OK
Jun 07 10:12:58 pannenkoek python[898]: Not Found: /.git/config
Jun 07 10:12:58 pannenkoek python[898]: INFO:     185.93.89.147:0 - "GET /.git/config HTTP/1.1" 404 Not Found
Jun 07 13:10:24 pannenkoek systemd[1]: Stopping symfexit.service - Symfexit...
Jun 07 13:10:24 pannenkoek python[898]: INFO:     Shutting down
Jun 07 13:10:24 pannenkoek python[898]: INFO:     Finished server process [898]
Jun 07 13:10:24 pannenkoek systemd[1]: symfexit.service: Deactivated successfully.
Jun 07 13:10:24 pannenkoek systemd[1]: Stopped symfexit.service - Symfexit.
Jun 07 13:10:24 pannenkoek systemd[1]: symfexit.service: Consumed 3min 25.870s CPU time, 91.2M memory peak.
Jun 07 13:11:09 pannenkoek systemd[1]: Started symfexit.service - Symfexit.
Jun 07 13:11:09 pannenkoek python[32262]: INFO:     Loading environment from '/home/deploy/symfexit/.env'
Jun 07 13:11:10 pannenkoek python[32262]: App init: no django-storages backend configured, using default (local) storage backend if set, otherwise you need to manage>
Jun 07 13:11:10 pannenkoek python[32262]: INFO:     Started server process [32262]
Jun 07 13:11:10 pannenkoek python[32262]: INFO:     Waiting for application startup.
Jun 07 13:11:10 pannenkoek python[32262]: INFO:     ASGI 'lifespan' protocol appears unsupported.
Jun 07 13:11:10 pannenkoek python[32262]: INFO:     Application startup complete.
Jun 07 13:11:10 pannenkoek python[32262]: INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
Jun 07 13:11:32 pannenkoek python[32262]: Internal Server Error: /
Jun 07 13:11:32 pannenkoek python[32262]: Traceback (most recent call last):
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/utils.py", line 105, in _execute
Jun 07 13:11:32 pannenkoek python[32262]:     return self.cursor.execute(sql, params)
Jun 07 13:11:32 pannenkoek python[32262]:            ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/psycopg/cursor.py", line 117, in execute
Jun 07 13:11:32 pannenkoek python[32262]:     raise ex.with_traceback(None)
Jun 07 13:11:32 pannenkoek python[32262]: psycopg.errors.UndefinedColumn: column tenants_client.payments_timezone does not exist
Jun 07 13:11:32 pannenkoek python[32262]: LINE 1: ...ts_client"."name", "tenants_client"."created_on", "tenants_c...
Jun 07 13:11:32 pannenkoek python[32262]:                                                              ^
Jun 07 13:11:32 pannenkoek python[32262]: The above exception was the direct cause of the following exception:
Jun 07 13:11:32 pannenkoek python[32262]: Traceback (most recent call last):
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 557, in thread_handler
Jun 07 13:11:32 pannenkoek python[32262]:     raise exc_info[1]
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/core/handlers/exception.py", line 42, in inner
Jun 07 13:11:32 pannenkoek python[32262]:     response = await get_response(request)
Jun 07 13:11:32 pannenkoek python[32262]:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/deprecation.py", line 321, in __acall__
Jun 07 13:11:32 pannenkoek python[32262]:     response = await sync_to_async(
Jun 07 13:11:32 pannenkoek python[32262]:                ^^^^^^^^^^^^^^^^^^^^
Jun 07 13:11:32 pannenkoek python[32262]:     ...<2 lines>...
Jun 07 13:11:32 pannenkoek python[32262]:     )(request)
Jun 07 13:11:32 pannenkoek python[32262]:     ^^^^^^^^^^
Jun 07 13:11:32 pannenkoek python[32262]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 506, in __call__
Jun 07 13:11:32 pannenkoek python[32262]:     ret = await asyncio.shield(exec_coro)
Jun 07 13:11:32 pannenkoek python[32262]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 506, in __call__
Jun 07 17:43:43 pannenkoek python[40575]:     ret = await asyncio.shield(exec_coro)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 506, in __call__
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 506, in __call__
Jun 07 17:43:43 pannenkoek python[40575]:     ret = await asyncio.shield(exec_coro)
Jun 07 17:43:43 pannenkoek python[40575]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/.local/share/uv/python/cpython-3.14.4-linux-aarch64-gnu/lib/python3.14/concurrent/futures/thread.py", line 86, in run
Jun 07 17:43:43 pannenkoek python[40575]:     result = ctx.run(self.task)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/.local/share/uv/python/cpython-3.14.4-linux-aarch64-gnu/lib/python3.14/concurrent/futures/thread.py", line 73, in run
Jun 07 17:43:43 pannenkoek python[40575]:     return fn(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/asgiref/sync.py", line 561, in thread_handler
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 45, in process_request
Jun 07 17:43:43 pannenkoek python[40575]:     tenant = self.get_tenant(domain_model, hostname)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 29, in get_tenant
Jun 07 17:43:43 pannenkoek python[40575]:     domain = domain_model.objects.select_related('tenant').get(domain=hostname)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 635, in get
Jun 07 17:43:43 pannenkoek python[40575]:     num = len(clone)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 372, in __len__
Jun 07 17:43:43 pannenkoek python[40575]:     self._fetch_all()
Jun 07 17:43:43 pannenkoek python[40575]:     ~~~~~~~~~~~~~~~^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 2000, in _fetch_all
Jun 07 17:43:43 pannenkoek python[40575]:     self._result_cache = list(self._iterable_class(self))
Jun 07 17:43:43 pannenkoek python[40575]:                          ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 95, in __iter__
Jun 07 17:43:43 pannenkoek python[40575]:     results = compiler.execute_sql(
Jun 07 17:43:43 pannenkoek python[40575]:         chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 45, in process_request
Jun 07 17:43:43 pannenkoek python[40575]:     tenant = self.get_tenant(domain_model, hostname)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/middleware/main.py", line 29, in get_tenant
Jun 07 17:43:43 pannenkoek python[40575]:     domain = domain_model.objects.select_related('tenant').get(domain=hostname)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 635, in get
Jun 07 17:43:43 pannenkoek python[40575]:     num = len(clone)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 372, in __len__
Jun 07 17:43:43 pannenkoek python[40575]:     self._fetch_all()
Jun 07 17:43:43 pannenkoek python[40575]:     ~~~~~~~~~~~~~~~^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 2000, in _fetch_all
Jun 07 17:43:43 pannenkoek python[40575]:     self._result_cache = list(self._iterable_class(self))
Jun 07 17:43:43 pannenkoek python[40575]:                          ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/query.py", line 95, in __iter__
Jun 07 17:43:43 pannenkoek python[40575]:     results = compiler.execute_sql(
Jun 07 17:43:43 pannenkoek python[40575]:         chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size
Jun 07 17:43:43 pannenkoek python[40575]:     )
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/models/sql/compiler.py", line 1622, in execute_sql
Jun 07 17:43:43 pannenkoek python[40575]:     cursor = self.connection.cursor()
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 320, in cursor
Jun 07 17:43:43 pannenkoek python[40575]:     return self._cursor()
Jun 07 17:43:43 pannenkoek python[40575]:            ~~~~~~~~~~~~^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django_tenants/postgresql_backend/base.py", line 144, in _cursor
Jun 07 17:43:43 pannenkoek python[40575]:     cursor = super()._cursor()
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 296, in _cursor
Jun 07 17:43:43 pannenkoek python[40575]:     self.ensure_connection()
Jun 07 17:43:43 pannenkoek python[40575]:     ~~~~~~~~~~~~~~~~~~~~~~^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 278, in ensure_connection
Jun 07 17:43:43 pannenkoek python[40575]:     with self.wrap_database_errors:
Jun 07 17:43:43 pannenkoek python[40575]:          ^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/utils.py", line 94, in __exit__
Jun 07 17:43:43 pannenkoek python[40575]:     raise dj_exc_value.with_traceback(traceback) from exc_value
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 279, in ensure_connection
Jun 07 17:43:43 pannenkoek python[40575]:     self.connect()
Jun 07 17:43:43 pannenkoek python[40575]:     ~~~~~~~~~~~~^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/base/base.py", line 256, in connect
Jun 07 17:43:43 pannenkoek python[40575]:     self.connection = self.get_new_connection(conn_params)
Jun 07 17:43:43 pannenkoek python[40575]:                       ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/utils/asyncio.py", line 26, in inner
Jun 07 17:43:43 pannenkoek python[40575]:     return func(*args, **kwargs)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/django/db/backends/postgresql/base.py", line 333, in get_new_connection
Jun 07 17:43:43 pannenkoek python[40575]:     connection = self.Database.connect(**conn_params)
Jun 07 17:43:43 pannenkoek python[40575]:   File "/home/deploy/symfexit/.venv/lib/python3.14/site-packages/psycopg/connection.py", line 130, in connect
Jun 07 17:43:43 pannenkoek python[40575]:     raise new_ex.with_traceback(None)
Jun 07 17:43:43 pannenkoek python[40575]: django.db.utils.OperationalError: connection failed: connection to server at "127.0.0.1", port 5432 failed: FATAL:  remaining connection slots are reserved for roles with the SUPERUSER attribute

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository file or test is named; start by tracing the symfexit-worker startup and database usage associated with the reported PostgreSQL connection errors. Reproduce the worker's connection growth over time and verify that connections are released while the worker continues serving requests without exhausting PostgreSQL.

Written by the indexing model from the issue text.

Assessment

Tech stack
django, postgresql, python
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.