Initial changes to implement test before creating maxscale_schema.
This commit is contained in:

committed by
Markus Makela

parent
ff7634113b
commit
ec42413db8
@ -1441,27 +1441,34 @@ static void set_master_heartbeat(MYSQL_MONITOR *handle, MONITOR_SERVERS *databas
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* create the maxscale_schema database */
|
/* create the maxscale_schema database */
|
||||||
if (mysql_query(database->con, "CREATE DATABASE IF NOT EXISTS maxscale_schema"))
|
if (mysql_query(database->con, "SELECT table_name FROM information_schema.tables WHERE table_schema = 'maxscale_schema' AND table_name = 'replication_heartbeat'")) {
|
||||||
{
|
MXS_ERROR( "[mysql_mon]: Error checking for replication_heartbeat in Master server"
|
||||||
MXS_ERROR("[mysql_mon]: Error creating maxscale_schema database in Master server"
|
": %s", mysql_error(database->con));
|
||||||
": %s", mysql_error(database->con));
|
|
||||||
|
|
||||||
database->server->rlag = -1;
|
database->server->rlag = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create repl_heartbeat table in maxscale_schema database */
|
if (0 == mysql_num_rows(mysql_store_result(database->con)))
|
||||||
if (mysql_query(database->con, "CREATE TABLE IF NOT EXISTS "
|
|
||||||
"maxscale_schema.replication_heartbeat "
|
|
||||||
"(maxscale_id INT NOT NULL, "
|
|
||||||
"master_server_id INT NOT NULL, "
|
|
||||||
"master_timestamp INT UNSIGNED NOT NULL, "
|
|
||||||
"PRIMARY KEY ( master_server_id, maxscale_id ) ) "
|
|
||||||
"ENGINE=MYISAM DEFAULT CHARSET=latin1"))
|
|
||||||
{
|
{
|
||||||
MXS_ERROR("[mysql_mon]: Error creating maxscale_schema.replication_heartbeat "
|
if (mysql_query(database->con, "CREATE DATABASE IF NOT EXISTS maxscale_schema")) {
|
||||||
"table in Master server: %s", mysql_error(database->con));
|
MXS_ERROR( "[mysql_mon]: Error creating maxscale_schema database in Master server"
|
||||||
|
": %s", mysql_error(database->con));
|
||||||
|
database->server->rlag = -1;
|
||||||
|
}
|
||||||
|
|
||||||
database->server->rlag = -1;
|
/* create repl_heartbeat table in maxscale_schema database */
|
||||||
|
if (mysql_query(database->con, "CREATE TABLE IF NOT EXISTS "
|
||||||
|
"maxscale_schema.replication_heartbeat "
|
||||||
|
"(maxscale_id INT NOT NULL, "
|
||||||
|
"master_server_id INT NOT NULL, "
|
||||||
|
"master_timestamp INT UNSIGNED NOT NULL, "
|
||||||
|
"PRIMARY KEY ( master_server_id, maxscale_id ) ) "
|
||||||
|
"ENGINE=MYISAM DEFAULT CHARSET=latin1"))
|
||||||
|
{
|
||||||
|
MXS_ERROR("[mysql_mon]: Error creating maxscale_schema.replication_heartbeat "
|
||||||
|
"table in Master server: %s", mysql_error(database->con));
|
||||||
|
|
||||||
|
database->server->rlag = -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* auto purge old values after 48 hours*/
|
/* auto purge old values after 48 hours*/
|
||||||
|
Reference in New Issue
Block a user