char *user = user_ce(upi->config_kset).u.string;
char *pass = pass_ce(upi->config_kset).u.string;
char *db = db_ce(upi->config_kset).u.string;
+#ifdef MYSQL_OPT_RECONNECT
+ my_bool trueval = 1;
+#endif
mi->dbh = mysql_init(NULL);
if (!mi->dbh) {
if (connect_timeout)
mysql_options(mi->dbh, MYSQL_OPT_CONNECT_TIMEOUT,
(const char *) &connect_timeout);
+#ifdef MYSQL_OPT_RECONNECT
+# if defined(MYSQL_VERSION_ID) && (MYSQL_VERSION_ID >= 50019)
+ mysql_options(mi->dbh, MYSQL_OPT_RECONNECT, &trueval);
+# endif
+#endif
if (!mysql_real_connect(mi->dbh, server, user, pass, db, port, NULL, 0)) {
ulogd_log(ULOGD_ERROR, "can't connect to db: %s\n",
return -1;
}
+#ifdef MYSQL_OPT_RECONNECT
+# if defined(MYSQL_VERSION_ID) && (MYSQL_VERSION_ID < 50019)
+ mysql_options(mi->dbh, MYSQL_OPT_RECONNECT, &trueval);
+# endif
+#endif
+
return 0;
}