[sr-dev] git:5.0:6f9f851c: db_mysql: do not set reconnect field explicitely for newer mysql versions
Daniel-Constantin Mierla
miconda at gmail.com
Fri Nov 3 08:30:33 CET 2017
Module: kamailio
Branch: 5.0
Commit: 6f9f851cbd88a1bdd9e9dd2180b498e821a5686b
URL: https://github.com/kamailio/kamailio/commit/6f9f851cbd88a1bdd9e9dd2180b498e821a5686b
Author: Daniel-Constantin Mierla <miconda at gmail.com>
Committer: Daniel-Constantin Mierla <miconda at gmail.com>
Date: 2017-11-03T08:29:39+01:00
db_mysql: do not set reconnect field explicitely for newer mysql versions
- exposed with MariaDB 10.2
- include mysql.h instead of mysql_version.h
- reported by GH #1296
(cherry picked from commit c31535072a04273b52a5cbc015e7ed1423d5dc33)
---
Modified: src/modules/db_mysql/km_my_con.c
---
Diff: https://github.com/kamailio/kamailio/commit/6f9f851cbd88a1bdd9e9dd2180b498e821a5686b.diff
Patch: https://github.com/kamailio/kamailio/commit/6f9f851cbd88a1bdd9e9dd2180b498e821a5686b.patch
---
diff --git a/src/modules/db_mysql/km_my_con.c b/src/modules/db_mysql/km_my_con.c
index b5f586dcf2..38e6875a19 100644
--- a/src/modules/db_mysql/km_my_con.c
+++ b/src/modules/db_mysql/km_my_con.c
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright (C) 2001-2004 iptel.org
* Copyright (C) 2008 1&1 Internet AG
*
@@ -14,8 +14,8 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
@@ -28,7 +28,7 @@
#include "km_my_con.h"
#include "km_db_mysql.h"
-#include <mysql_version.h>
+#include <mysql.h>
#include "../../core/mem/mem.h"
#include "../../core/dprint.h"
#include "../../core/ut.h"
@@ -108,12 +108,17 @@ struct my_con* db_mysql_new_connection(const struct db_id* id)
rec = 1;
mysql_options(ptr->con, MYSQL_OPT_RECONNECT, &rec);
}
+#else
+ if (db_mysql_auto_reconnect)
+ ptr->con->reconnect = 1;
+ else
+ ptr->con->reconnect = 0;
#endif
- if (db_mysql_update_affected_found) {
+ if (db_mysql_update_affected_found) {
connection_flag |= CLIENT_FOUND_ROWS;
}
-
+
#if (MYSQL_VERSION_ID >= 40100)
if (!mysql_real_connect(ptr->con, host, id->username, id->password,
id->database, id->port, 0, connection_flag|CLIENT_MULTI_STATEMENTS)) {
@@ -127,11 +132,6 @@ struct my_con* db_mysql_new_connection(const struct db_id* id)
mysql_close(ptr->con);
goto err;
}
- /* force reconnection if enabled */
- if (db_mysql_auto_reconnect)
- ptr->con->reconnect = 1;
- else
- ptr->con->reconnect = 0;
LM_DBG("connection type is %s\n", mysql_get_host_info(ptr->con));
LM_DBG("protocol version is %d\n", mysql_get_proto_info(ptr->con));
More information about the sr-dev
mailing list