Added support for SHOW [GLOBAL] STATUS LIKE 'Uptime'
Added support for SHOW [GLOBAL] STATUS LIKE 'Uptime'
This commit is contained in:
parent
9cd9a6183b
commit
3f4acf4bc5
@ -52,8 +52,9 @@
|
|||||||
* master_uuid, master_hostname, master_version
|
* master_uuid, master_hostname, master_version
|
||||||
* If set those values are sent to slaves instead of
|
* If set those values are sent to slaves instead of
|
||||||
* saved master responses
|
* saved master responses
|
||||||
* 03/09/2015 Massimiliano Pinto Added support for SHOW GLOBAL VARIABLES LIKE
|
* 03/09/2015 Massimiliano Pinto Added support for SHOW [GLOBAL] VARIABLES LIKE
|
||||||
* 04/09/2015 Massimiliano Pinto Added support for SHOW WARNINGS
|
* 04/09/2015 Massimiliano Pinto Added support for SHOW WARNINGS
|
||||||
|
* 15/09/2015 Massimiliano Pinto Added support for SHOW [GLOBAL] STATUS LIKE 'Uptime'
|
||||||
*
|
*
|
||||||
* @endverbatim
|
* @endverbatim
|
||||||
*/
|
*/
|
||||||
@ -140,6 +141,7 @@ char *blr_test_set_master_logfile(ROUTER_INSTANCE *router, char *filename, char
|
|||||||
static int blr_slave_handle_variables(ROUTER_INSTANCE *router, ROUTER_SLAVE *slave, char *stmt);
|
static int blr_slave_handle_variables(ROUTER_INSTANCE *router, ROUTER_SLAVE *slave, char *stmt);
|
||||||
static int blr_slave_send_warning_message(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave, char *message);
|
static int blr_slave_send_warning_message(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave, char *message);
|
||||||
static int blr_slave_show_warnings(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave);
|
static int blr_slave_show_warnings(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave);
|
||||||
|
extern int MaxScaleUptime();
|
||||||
|
|
||||||
void poll_fake_write_event(DCB *dcb);
|
void poll_fake_write_event(DCB *dcb);
|
||||||
|
|
||||||
@ -271,7 +273,7 @@ blr_slave_request(ROUTER_INSTANCE *router, ROUTER_SLAVE *slave, GWBUF *queue)
|
|||||||
* SELECT @@version
|
* SELECT @@version
|
||||||
* SELECT @@server_uuid
|
* SELECT @@server_uuid
|
||||||
*
|
*
|
||||||
* Six show commands are supported:
|
* Eight show commands are supported:
|
||||||
* SHOW [GLOBAL] VARIABLES LIKE 'SERVER_ID'
|
* SHOW [GLOBAL] VARIABLES LIKE 'SERVER_ID'
|
||||||
* SHOW [GLOBAL] VARIABLES LIKE 'SERVER_UUID'
|
* SHOW [GLOBAL] VARIABLES LIKE 'SERVER_UUID'
|
||||||
* SHOW [GLOBAL] VARIABLES LIKE 'MAXSCALE%'
|
* SHOW [GLOBAL] VARIABLES LIKE 'MAXSCALE%'
|
||||||
@ -279,6 +281,7 @@ blr_slave_request(ROUTER_INSTANCE *router, ROUTER_SLAVE *slave, GWBUF *queue)
|
|||||||
* SHOW MASTER STATUS
|
* SHOW MASTER STATUS
|
||||||
* SHOW SLAVE HOSTS
|
* SHOW SLAVE HOSTS
|
||||||
* SHOW WARNINGS
|
* SHOW WARNINGS
|
||||||
|
* SHOW [GLOBAL] STATUS LIKE 'Uptime'
|
||||||
*
|
*
|
||||||
* Six set commands are supported:
|
* Six set commands are supported:
|
||||||
* SET @master_binlog_checksum = @@global.binlog_checksum
|
* SET @master_binlog_checksum = @@global.binlog_checksum
|
||||||
@ -487,6 +490,11 @@ extern char *strcasestr();
|
|||||||
"%s: Expected LIKE clause in SHOW GLOBAL VARIABLES.",
|
"%s: Expected LIKE clause in SHOW GLOBAL VARIABLES.",
|
||||||
router->service->name)));
|
router->service->name)));
|
||||||
}
|
}
|
||||||
|
else if (strcasecmp(word, "STATUS") == 0)
|
||||||
|
{
|
||||||
|
free(query_text);
|
||||||
|
return blr_slave_handle_variables(router, slave, brkb);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (strcasecmp(word, "VARIABLES") == 0)
|
else if (strcasecmp(word, "VARIABLES") == 0)
|
||||||
{
|
{
|
||||||
@ -558,6 +566,11 @@ extern char *strcasestr();
|
|||||||
return blr_slave_send_ok(router, slave);
|
return blr_slave_send_ok(router, slave);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (strcasecmp(word, "STATUS") == 0)
|
||||||
|
{
|
||||||
|
free(query_text);
|
||||||
|
return blr_slave_handle_variables(router, slave, brkb);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (strcasecmp(query_text, "SET") == 0)
|
else if (strcasecmp(query_text, "SET") == 0)
|
||||||
{
|
{
|
||||||
@ -3896,6 +3909,10 @@ char *sep = " ,=";
|
|||||||
return blr_slave_replay(router, slave, router->saved_master.uuid);
|
return blr_slave_replay(router, slave, router->saved_master.uuid);
|
||||||
} else if (strcasecmp(word, "'MAXSCALE%'") == 0) {
|
} else if (strcasecmp(word, "'MAXSCALE%'") == 0) {
|
||||||
return blr_slave_send_maxscale_variables(router, slave);
|
return blr_slave_send_maxscale_variables(router, slave);
|
||||||
|
} else if (strcasecmp(word, "'Uptime'") == 0) {
|
||||||
|
char uptime[41]="";
|
||||||
|
snprintf(uptime, 40, "%d", MaxScaleUptime());
|
||||||
|
return blr_slave_send_variable(router, slave, "Uptime", uptime, BLR_TYPE_INT);
|
||||||
} else
|
} else
|
||||||
return 0;
|
return 0;
|
||||||
} else
|
} else
|
||||||
|
@ -82,6 +82,12 @@ static struct option long_options[] = {
|
|||||||
|
|
||||||
char *binlog_check_version = "1.0.0";
|
char *binlog_check_version = "1.0.0";
|
||||||
|
|
||||||
|
int
|
||||||
|
MaxScaleUptime()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char **argv) {
|
int main(int argc, char **argv) {
|
||||||
char** arg_vector;
|
char** arg_vector;
|
||||||
int arg_count = 4;
|
int arg_count = 4;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user