Opened 11 years ago
Closed 11 years ago
#22060 closed Bug (duplicate)
Error with Postgresql persistent connections after DB fail/restart
Reported by: | Connor23 | Owned by: | nobody |
---|---|---|---|
Component: | Database layer (models, ORM) | Version: | 1.6 |
Severity: | Normal | Keywords: | persistent, connection, psycopg2, postgresql, pool, db, database, error, fail |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Hi,
When using persistent connections with PostgreSQL if the DB fails or is restarted Django will return the following error:
2014-02-15 14:33:07 [24868] [ERROR] Error handling request Traceback (most recent call last): File "/srv/webapps/myapp/local/lib/python2.7/site-packages/gunicorn/workers/sync.py", line 131, in handle_request respiter = self.wsgi(environ, resp.start_response) File "/srv/webapps/myapp/local/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 194, in __call__ signals.request_started.send(sender=self.__class__) File "/srv/webapps/myapp/local/lib/python2.7/site-packages/django/dispatch/dispatcher.py", line 185, in send response = receiver(signal=self, sender=sender, **named) File "/srv/webapps/myapp/local/lib/python2.7/site-packages/django/db/__init__.py", line 94, in close_old_connections conn.close_if_unusable_or_obsolete() File "/srv/webapps/myapp/local/lib/python2.7/site-packages/django/db/backends/__init__.py", line 462, in close_if_unusable_or_obsolete if self.is_usable(): File "/srv/webapps/myapp/local/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 192, in is_usable self.connection.cursor().execute("SELECT 1") InterfaceError: connection already closed
Not sure if this is Django related or psycopg2 related.
Here are few details about my configuration:
Django==1.6.2
gunicorn==18.0
psycopg2==2.5.2
CONN_MAX_AGE is set to 600
Is this a bug? Any ideas?
Note:
See TracTickets
for help on using tickets.
Duplicate of #21553 I think.