From 544d5c86e46def9972ef77ae2a92394e1a5470f7 Mon Sep 17 00:00:00 2001
From: Marco De Marco <demarco@oats.inaf.it>
Date: Tue, 28 Jan 2014 15:54:35 +0100
Subject: [PATCH] Mysql server has gone away fix

---
 src/DBManager.cpp | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/DBManager.cpp b/src/DBManager.cpp
index 084bd4a..6c0e2f1 100644
--- a/src/DBManager.cpp
+++ b/src/DBManager.cpp
@@ -62,7 +62,18 @@ void DBManager::connect() throw(soci::soci_error)
     #endif
 
     for(unsigned int i=0; i<connectionNumber; ++i)
+    {
         m_connectionPool_sp->at(i).open(soci::mysql, connection.str());
+
+        soci::mysql_session_backend* backend =
+            static_cast<soci::mysql_session_backend*>(
+            m_connectionPool_sp->at(i).get_backend());
+
+        MYSQL* mysql = backend->conn_;
+
+        bool reconnect = true;
+        mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect);
+    }
 }
 
 //==============================================================================
-- 
GitLab