From 2b8a6687f03972b53f855e2bf996de0387c51ccf Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 13 Jun 2018 14:41:40 +0100 Subject: [DB] Attempt reconnection if current connection was lost --- pysite/database.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'pysite') diff --git a/pysite/database.py b/pysite/database.py index a8c6c559..bb0c3415 100644 --- a/pysite/database.py +++ b/pysite/database.py @@ -226,7 +226,14 @@ class RethinkDB: """ if not new_connection: - result = query.run(self.conn) + try: + result = query.run(self.conn) + except rethinkdb.ReqlDriverError as e: + if e.message == "Connection is closed.": + self.log.warning("Connection was closed, attempting with a new connection...") + result = query.run(self.get_connection(connect_database)) + else: + raise else: result = query.run(self.get_connection(connect_database)) -- cgit v1.2.3