MXS-770: PURGE BINARY LOGS, minor improvements.
PURGE BINARY LOGS, minor improvements.
This commit is contained in:
@ -8192,7 +8192,6 @@ blr_show_binary_logs(ROUTER_INSTANCE *router,
|
|||||||
"server_id, "
|
"server_id, "
|
||||||
"binlog_file "
|
"binlog_file "
|
||||||
"ORDER BY id ASC;";
|
"ORDER BY id ASC;";
|
||||||
static char sql_stmt[GTID_SQL_BUFFER_SIZE];
|
|
||||||
int seqno;
|
int seqno;
|
||||||
char *errmsg = NULL;
|
char *errmsg = NULL;
|
||||||
BINARY_LOG_DATA_RESULT result = {};
|
BINARY_LOG_DATA_RESULT result = {};
|
||||||
@ -8643,7 +8642,7 @@ const char *last_file)
|
|||||||
{
|
{
|
||||||
char *word;
|
char *word;
|
||||||
char *brkb;
|
char *brkb;
|
||||||
char *sep = " \t";
|
const char *sep = " \t";
|
||||||
|
|
||||||
word = strtok_r(purge_command, sep, &brkb);
|
word = strtok_r(purge_command, sep, &brkb);
|
||||||
|
|
||||||
@ -8724,7 +8723,7 @@ blr_purge_binary_logs(ROUTER_INSTANCE *router,
|
|||||||
char *errmsg = NULL;
|
char *errmsg = NULL;
|
||||||
size_t n_delete = 0;
|
size_t n_delete = 0;
|
||||||
// Select first ROWID of current binlog file
|
// Select first ROWID of current binlog file
|
||||||
static const char last_file_tpl[] = "SELECT MIN(ROWID) AS min_id, "
|
static const char last_file_tpl[] = "SELECT MIN(id) AS min_id, "
|
||||||
"(rep_domain || '/' || "
|
"(rep_domain || '/' || "
|
||||||
"server_id || '/' || "
|
"server_id || '/' || "
|
||||||
"binlog_file) AS file "
|
"binlog_file) AS file "
|
||||||
@ -8733,25 +8732,25 @@ blr_purge_binary_logs(ROUTER_INSTANCE *router,
|
|||||||
"GROUP BY file "
|
"GROUP BY file "
|
||||||
"ORDER BY id ASC;";
|
"ORDER BY id ASC;";
|
||||||
// Select first ROWID of user specifed file
|
// Select first ROWID of user specifed file
|
||||||
static const char find_file_tpl[] = "SELECT MIN(ROWID) AS min_id, "
|
static const char find_file_tpl[] = "SELECT MIN(id) AS min_id, "
|
||||||
"(rep_domain || '/' || "
|
"(rep_domain || '/' || "
|
||||||
"server_id || '/' || "
|
"server_id || '/' || "
|
||||||
"binlog_file) AS file "
|
"binlog_file) AS file "
|
||||||
"FROM gtid_maps "
|
"FROM gtid_maps "
|
||||||
"WHERE binlog_file = '%s' "
|
"WHERE binlog_file = '%s' "
|
||||||
"GROUP BY binlog_file "
|
"GROUP BY binlog_file "
|
||||||
"ORDER BY binlog_file ASC;";
|
"ORDER BY id ASC;";
|
||||||
// SELECT files with ROWID < given one and DELETE
|
// SELECT files with ROWID < given one and DELETE
|
||||||
static const char delete_list_tpl[] = "SELECT binlog_file, "
|
static const char delete_list_tpl[] = "SELECT binlog_file, "
|
||||||
"(rep_domain || '/' || "
|
"(rep_domain || '/' || "
|
||||||
"server_id || '/' || "
|
"server_id || '/' || "
|
||||||
"binlog_file) AS file "
|
"binlog_file) AS file "
|
||||||
"FROM gtid_maps "
|
"FROM gtid_maps "
|
||||||
"WHERE ROWID < %" PRIu64 " "
|
"WHERE id < %" PRIu64 " "
|
||||||
"GROUP BY file "
|
"GROUP BY file "
|
||||||
"ORDER BY id ASC; "
|
"ORDER BY id ASC; "
|
||||||
"DELETE FROM gtid_maps "
|
"DELETE FROM gtid_maps "
|
||||||
"WHERE ROWID < %" PRIu64 ";";
|
"WHERE id < %" PRIu64 ";";
|
||||||
static char sql_stmt[GTID_SQL_BUFFER_SIZE];
|
static char sql_stmt[GTID_SQL_BUFFER_SIZE];
|
||||||
BINARY_LOG_DATA_RESULT result;
|
BINARY_LOG_DATA_RESULT result;
|
||||||
static const char *last_file;
|
static const char *last_file;
|
||||||
@ -8795,7 +8794,7 @@ blr_purge_binary_logs(ROUTER_INSTANCE *router,
|
|||||||
spinlock_release(&router->binlog_lock);
|
spinlock_release(&router->binlog_lock);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Prepare SQL statement for last file ROWID o find_file ROWID
|
* Prepare SQL statement for last file ROWID or find_file ROWID
|
||||||
*/
|
*/
|
||||||
if (use_last)
|
if (use_last)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user