Partially revert 4ba011266843857bbd3201e5b925a47e88e1808f
Add back leading operator enforcement.
This commit is contained in:
@ -783,9 +783,9 @@ static MXS_ROUTER* createInstance(SERVICE* service, MXS_CONFIG_PARAMETER* params
|
||||
/* Log binlog structure storage mode */
|
||||
MXS_NOTICE("%s: storing binlog files in %s",
|
||||
service->name,
|
||||
inst->storage_type == BLR_BINLOG_STORAGE_FLAT
|
||||
? "'flat' mode"
|
||||
: "'tree' mode using GTID domain_id and server_id");
|
||||
inst->storage_type == BLR_BINLOG_STORAGE_FLAT ?
|
||||
"'flat' mode" :
|
||||
"'tree' mode using GTID domain_id and server_id");
|
||||
|
||||
/* Enable MariaDB the GTID maps store */
|
||||
if (inst->mariadb10_compat)
|
||||
@ -826,8 +826,8 @@ static MXS_ROUTER* createInstance(SERVICE* service, MXS_CONFIG_PARAMETER* params
|
||||
|
||||
SSL_LISTENER* ssl_cfg;
|
||||
/* Allocate SSL struct for backend connection */
|
||||
if ((ssl_cfg
|
||||
= static_cast<SSL_LISTENER*>(MXS_CALLOC(1, sizeof(SSL_LISTENER)))) == NULL)
|
||||
if ((ssl_cfg =
|
||||
static_cast<SSL_LISTENER*>(MXS_CALLOC(1, sizeof(SSL_LISTENER)))) == NULL)
|
||||
{
|
||||
MXS_ERROR("%s: Error allocating memory for SSL struct in createInstance",
|
||||
inst->service->name);
|
||||
@ -1649,8 +1649,8 @@ static void diagnostics(MXS_ROUTER* router, DCB* dcb)
|
||||
router_inst->stats.n_residuals);
|
||||
dcb_printf(dcb,
|
||||
"\tAverage events per packet: %.1f\n",
|
||||
router_inst->stats.n_reads != 0
|
||||
? ((double)router_inst->stats.n_binlogs / router_inst->stats.n_reads) : 0);
|
||||
router_inst->stats.n_reads != 0 ?
|
||||
((double)router_inst->stats.n_binlogs / router_inst->stats.n_reads) : 0);
|
||||
|
||||
spinlock_acquire(&router_inst->lock);
|
||||
if (router_inst->stats.lastReply)
|
||||
@ -1669,8 +1669,8 @@ static void diagnostics(MXS_ROUTER* router, DCB* dcb)
|
||||
dcb_printf(dcb,
|
||||
"\tLast event from master: 0x%x, %s\n",
|
||||
router_inst->lastEventReceived,
|
||||
(router_inst->lastEventReceived <= MAX_EVENT_TYPE)
|
||||
? event_names[router_inst->lastEventReceived] : "unknown");
|
||||
(router_inst->lastEventReceived <= MAX_EVENT_TYPE) ?
|
||||
event_names[router_inst->lastEventReceived] : "unknown");
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1824,8 +1824,8 @@ static void diagnostics(MXS_ROUTER* router, DCB* dcb)
|
||||
{
|
||||
dcb_printf(dcb,
|
||||
"\t\tSlave connected with SSL: %s\n",
|
||||
session->dcb->ssl_state == SSL_ESTABLISHED
|
||||
? "Established" : "Not connected yet");
|
||||
session->dcb->ssl_state == SSL_ESTABLISHED ?
|
||||
"Established" : "Not connected yet");
|
||||
}
|
||||
dcb_printf(dcb,
|
||||
"\t\tNext Sequence No: %d\n",
|
||||
@ -1947,10 +1947,10 @@ static void diagnostics(MXS_ROUTER* router, DCB* dcb)
|
||||
{
|
||||
dcb_printf(dcb,
|
||||
"\t\tSlave_mode: catchup. %s%s\n",
|
||||
((session->cstate & CS_EXPECTCB) == 0 ? ""
|
||||
: "Waiting for DCB queue to drain."),
|
||||
((session->cstate & CS_BUSY) == 0 ? ""
|
||||
: " Busy in slave catchup."));
|
||||
((session->cstate & CS_EXPECTCB) == 0 ? "" :
|
||||
"Waiting for DCB queue to drain."),
|
||||
((session->cstate & CS_BUSY) == 0 ? "" :
|
||||
" Busy in slave catchup."));
|
||||
}
|
||||
}
|
||||
#if SPINLOCK_PROFILE
|
||||
@ -2103,8 +2103,8 @@ static json_t* diagnostics_json(const MXS_ROUTER* router)
|
||||
json_object_set_new(rval, "events_read", json_integer(router_inst->stats.n_reads));
|
||||
json_object_set_new(rval, "residual_packets", json_integer(router_inst->stats.n_residuals));
|
||||
|
||||
double average_packets = router_inst->stats.n_reads != 0
|
||||
? ((double)router_inst->stats.n_binlogs / router_inst->stats.n_reads) : 0;
|
||||
double average_packets = router_inst->stats.n_reads != 0 ?
|
||||
((double)router_inst->stats.n_binlogs / router_inst->stats.n_reads) : 0;
|
||||
|
||||
json_object_set_new(rval, "average_events_per_packets", json_real(average_packets));
|
||||
|
||||
@ -2122,9 +2122,9 @@ static json_t* diagnostics_json(const MXS_ROUTER* router)
|
||||
{
|
||||
json_object_set_new(rval,
|
||||
"latest_event_type",
|
||||
json_string((router_inst->lastEventReceived <= MAX_EVENT_TYPE)
|
||||
? event_names[router_inst->lastEventReceived]
|
||||
: "unknown"));
|
||||
json_string((router_inst->lastEventReceived <= MAX_EVENT_TYPE) ?
|
||||
event_names[router_inst->lastEventReceived] :
|
||||
"unknown"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -139,8 +139,8 @@ bool blr_handle_one_event(MXS_ROUTER* instance, REP_HEADER& hdr, uint8_t* ptr, u
|
||||
|
||||
statement_len = len - (MYSQL_HEADER_LEN + 1 + BINLOG_EVENT_HDR_LEN + 4 + 4 + 1 + 2 + 2 \
|
||||
+ var_block_len + 1 + db_name_len);
|
||||
statement_sql
|
||||
= static_cast<char*>(MXS_CALLOC(1, statement_len + 1));
|
||||
statement_sql =
|
||||
static_cast<char*>(MXS_CALLOC(1, statement_len + 1));
|
||||
MXS_ABORT_IF_NULL(statement_sql);
|
||||
memcpy(statement_sql,
|
||||
(char*)ptr + MYSQL_HEADER_LEN + 1 + BINLOG_EVENT_HDR_LEN + 4 + 4 + 1 + 2 + 2 \
|
||||
@ -205,8 +205,8 @@ bool blr_handle_one_event(MXS_ROUTER* instance, REP_HEADER& hdr, uint8_t* ptr, u
|
||||
* the replication event types
|
||||
* else stop replication from master
|
||||
*/
|
||||
int event_limit = router->mariadb10_compat
|
||||
? MAX_EVENT_TYPE_MARIADB10 : MAX_EVENT_TYPE;
|
||||
int event_limit = router->mariadb10_compat ?
|
||||
MAX_EVENT_TYPE_MARIADB10 : MAX_EVENT_TYPE;
|
||||
|
||||
if (hdr.event_type <= event_limit)
|
||||
{
|
||||
|
@ -2363,8 +2363,8 @@ int blr_read_events_all_events(ROUTER_INSTANCE* router,
|
||||
{
|
||||
MXS_DEBUG(" FDE Checksum alg desc %i, alg type %s",
|
||||
check_alg,
|
||||
check_alg == 1
|
||||
? "BINLOG_CHECKSUM_ALG_CRC32" : "NONE or UNDEF");
|
||||
check_alg == 1 ?
|
||||
"BINLOG_CHECKSUM_ALG_CRC32" : "NONE or UNDEF");
|
||||
}
|
||||
if (check_alg == 1)
|
||||
{
|
||||
@ -2413,8 +2413,8 @@ int blr_read_events_all_events(ROUTER_INSTANCE* router,
|
||||
char nonce_hex[AES_BLOCK_SIZE * 2 + 1] = "";
|
||||
MXS_START_ENCRYPTION_EVENT ste_event = {};
|
||||
void* mem = MXS_CALLOC(1, sizeof(BINLOG_ENCRYPTION_CTX));
|
||||
BINLOG_ENCRYPTION_CTX* new_encryption_ctx
|
||||
= static_cast<BINLOG_ENCRYPTION_CTX*>(mem);
|
||||
BINLOG_ENCRYPTION_CTX* new_encryption_ctx =
|
||||
static_cast<BINLOG_ENCRYPTION_CTX*>(mem);
|
||||
|
||||
if (new_encryption_ctx == NULL)
|
||||
{
|
||||
@ -2761,10 +2761,10 @@ int blr_read_events_all_events(ROUTER_INSTANCE* router,
|
||||
db_name_len = ptr[4 + 4];
|
||||
var_block_len = ptr[4 + 4 + 1 + 2];
|
||||
|
||||
statement_len
|
||||
= hdr.event_size
|
||||
- BINLOG_EVENT_HDR_LEN
|
||||
- (4 + 4 + 1 + 2 + 2 + var_block_len + 1 + db_name_len);
|
||||
statement_len =
|
||||
hdr.event_size
|
||||
- BINLOG_EVENT_HDR_LEN
|
||||
- (4 + 4 + 1 + 2 + 2 + var_block_len + 1 + db_name_len);
|
||||
|
||||
statement_sql = static_cast<char*>(MXS_CALLOC(1, statement_len + 1));
|
||||
if (statement_sql)
|
||||
@ -3782,8 +3782,8 @@ uint8_t* blr_create_start_encryption_event(ROUTER_INSTANCE* router,
|
||||
{
|
||||
uint8_t* new_event;
|
||||
uint8_t event_size = sizeof(MXS_START_ENCRYPTION_EVENT);
|
||||
BINLOG_ENCRYPTION_CTX* new_encryption_ctx
|
||||
= static_cast<BINLOG_ENCRYPTION_CTX*>(MXS_CALLOC(1, sizeof(BINLOG_ENCRYPTION_CTX)));
|
||||
BINLOG_ENCRYPTION_CTX* new_encryption_ctx =
|
||||
static_cast<BINLOG_ENCRYPTION_CTX*>(MXS_CALLOC(1, sizeof(BINLOG_ENCRYPTION_CTX)));
|
||||
|
||||
if (new_encryption_ctx == NULL)
|
||||
{
|
||||
@ -4860,20 +4860,20 @@ bool blr_binlog_file_exists(ROUTER_INSTANCE* router,
|
||||
// Add prefix
|
||||
sprintf(prefix,
|
||||
"%" PRIu32 "/%" PRIu32 "/",
|
||||
info_file
|
||||
? info_file->gtid_elms.domain_id
|
||||
: router->mariadb10_gtid_domain,
|
||||
info_file
|
||||
? info_file->gtid_elms.server_id
|
||||
: router->orig_masterid);
|
||||
info_file ?
|
||||
info_file->gtid_elms.domain_id :
|
||||
router->mariadb10_gtid_domain,
|
||||
info_file ?
|
||||
info_file->gtid_elms.server_id :
|
||||
router->orig_masterid);
|
||||
strcat(path, prefix);
|
||||
}
|
||||
|
||||
// Set final file name full path
|
||||
strcat(path,
|
||||
info_file == NULL
|
||||
? router->binlog_name
|
||||
: info_file->file);
|
||||
info_file == NULL ?
|
||||
router->binlog_name :
|
||||
info_file->file);
|
||||
|
||||
// Check file
|
||||
if (access(path, F_OK) == -1 && errno == ENOENT)
|
||||
@ -4881,9 +4881,9 @@ bool blr_binlog_file_exists(ROUTER_INSTANCE* router,
|
||||
// No file found
|
||||
MXS_WARNING("%s: %s, missing binlog file '%s'",
|
||||
router->service->name,
|
||||
info_file == NULL
|
||||
? "ROTATE_EVENT"
|
||||
: "Slave request",
|
||||
info_file == NULL ?
|
||||
"ROTATE_EVENT" :
|
||||
"Slave request",
|
||||
path);
|
||||
|
||||
ret = false;
|
||||
|
@ -1226,8 +1226,8 @@ static void* CreateMySQLAuthData(const char* username, const char* password, con
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if ((auth_info
|
||||
= static_cast<MYSQL_session*>(MXS_CALLOC(1, sizeof(MYSQL_session)))) == NULL)
|
||||
if ((auth_info =
|
||||
static_cast<MYSQL_session*>(MXS_CALLOC(1, sizeof(MYSQL_session)))) == NULL)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
@ -1556,12 +1556,12 @@ static void blr_log_identity(ROUTER_INSTANCE* router)
|
||||
"Server_id: %d, Slave_UUID: %s, Host: %s",
|
||||
router->service->name,
|
||||
router->serverid,
|
||||
router->uuid == NULL
|
||||
? "not available"
|
||||
: router->uuid,
|
||||
(router->set_slave_hostname && router->set_slave_hostname[0])
|
||||
? router->set_slave_hostname
|
||||
: "not set");
|
||||
router->uuid == NULL ?
|
||||
"not available" :
|
||||
router->uuid,
|
||||
(router->set_slave_hostname && router->set_slave_hostname[0]) ?
|
||||
router->set_slave_hostname :
|
||||
"not set");
|
||||
|
||||
/* Seen by the slaves */
|
||||
|
||||
@ -1745,8 +1745,8 @@ bool blr_send_event(blr_thread_role_t role,
|
||||
|
||||
while (rval && len > 0)
|
||||
{
|
||||
uint64_t payload_len = first ? MYSQL_PACKET_LENGTH_MAX - 1
|
||||
: MXS_MIN(MYSQL_PACKET_LENGTH_MAX, len);
|
||||
uint64_t payload_len = first ? MYSQL_PACKET_LENGTH_MAX - 1 :
|
||||
MXS_MIN(MYSQL_PACKET_LENGTH_MAX, len);
|
||||
|
||||
if (blr_send_packet(slave, buf, payload_len, first))
|
||||
{
|
||||
@ -2531,12 +2531,12 @@ static void blr_start_master_registration(ROUTER_INSTANCE* router, GWBUF* buf)
|
||||
blr_register_handle_checksum(router, buf);
|
||||
// Next state is BLRM_MARIADB10 or BLRM_GTIDMODE
|
||||
{
|
||||
unsigned int state = router->mariadb10_compat
|
||||
? BLRM_MARIADB10
|
||||
: BLRM_GTIDMODE;
|
||||
const char* command = router->mariadb10_compat
|
||||
? "SET @mariadb_slave_capability=4"
|
||||
: "SELECT @@GLOBAL.GTID_MODE";
|
||||
unsigned int state = router->mariadb10_compat ?
|
||||
BLRM_MARIADB10 :
|
||||
BLRM_GTIDMODE;
|
||||
const char* command = router->mariadb10_compat ?
|
||||
"SET @mariadb_slave_capability=4" :
|
||||
"SELECT @@GLOBAL.GTID_MODE";
|
||||
|
||||
blr_register_send_command(router, command, state);
|
||||
}
|
||||
@ -2554,12 +2554,12 @@ static void blr_start_master_registration(ROUTER_INSTANCE* router, GWBUF* buf)
|
||||
* Always request "gtid_domain_id" to Master server
|
||||
* if MariaDB 10 Compatibilty is On
|
||||
*/
|
||||
unsigned int state = router->mariadb10_compat
|
||||
? BLRM_MARIADB10_GTID_DOMAIN
|
||||
: BLRM_LATIN1;
|
||||
const char* command = router->mariadb10_compat
|
||||
? "SELECT @@GLOBAL.gtid_domain_id"
|
||||
: "SET NAMES latin1";
|
||||
unsigned int state = router->mariadb10_compat ?
|
||||
BLRM_MARIADB10_GTID_DOMAIN :
|
||||
BLRM_LATIN1;
|
||||
const char* command = router->mariadb10_compat ?
|
||||
"SELECT @@GLOBAL.gtid_domain_id" :
|
||||
"SET NAMES latin1";
|
||||
blr_register_send_command(router, command, state);
|
||||
}
|
||||
break;
|
||||
@ -2643,12 +2643,12 @@ static void blr_start_master_registration(ROUTER_INSTANCE* router, GWBUF* buf)
|
||||
buf);
|
||||
// Next state is MAXWELL BLRM_RESULTS_CHARSET or BLRM_SELECT1
|
||||
{
|
||||
unsigned int state = router->maxwell_compat
|
||||
? BLRM_RESULTS_CHARSET
|
||||
: BLRM_SELECT1;
|
||||
const char* command = router->maxwell_compat
|
||||
? "SET character_set_results = NULL"
|
||||
: "SELECT 1";
|
||||
unsigned int state = router->maxwell_compat ?
|
||||
BLRM_RESULTS_CHARSET :
|
||||
BLRM_SELECT1;
|
||||
const char* command = router->maxwell_compat ?
|
||||
"SET character_set_results = NULL" :
|
||||
"SELECT 1";
|
||||
|
||||
blr_register_send_command(router, command, state);
|
||||
break;
|
||||
|
@ -1219,9 +1219,9 @@ static int blr_slave_send_slave_status(ROUTER_INSTANCE* router,
|
||||
}
|
||||
|
||||
/* Get the right GTID columns array */
|
||||
const char** gtid_status_columns = router->mariadb10_gtid
|
||||
? mariadb10_gtid_status_columns
|
||||
: mysql_gtid_status_columns;
|
||||
const char** gtid_status_columns = router->mariadb10_gtid ?
|
||||
mariadb10_gtid_status_columns :
|
||||
mysql_gtid_status_columns;
|
||||
/* Increment ncols with the right GTID columns */
|
||||
while (gtid_status_columns[gtid_cols++])
|
||||
{
|
||||
@ -1321,9 +1321,9 @@ static int blr_slave_send_slave_status(ROUTER_INSTANCE* router,
|
||||
snprintf(column,
|
||||
max_column_size,
|
||||
"%s",
|
||||
router->service->dbref->server->address
|
||||
? router->service->dbref->server->address
|
||||
: "");
|
||||
router->service->dbref->server->address ?
|
||||
router->service->dbref->server->address :
|
||||
"");
|
||||
col_len = strlen(column);
|
||||
*ptr++ = col_len; // Length of result string
|
||||
memcpy((char*)ptr, column, col_len); // Result string
|
||||
@ -1589,8 +1589,8 @@ static int blr_slave_send_slave_status(ROUTER_INSTANCE* router,
|
||||
snprintf(column,
|
||||
max_column_size,
|
||||
"%s",
|
||||
router->master_uuid
|
||||
? router->master_uuid : router->uuid);
|
||||
router->master_uuid ?
|
||||
router->master_uuid : router->uuid);
|
||||
col_len = strlen(column);
|
||||
*ptr++ = col_len; // Length of result string
|
||||
memcpy((char*)ptr, column, col_len); // Result string
|
||||
@ -1663,9 +1663,9 @@ static int blr_slave_send_slave_status(ROUTER_INSTANCE* router,
|
||||
// 1 - Add "Using_Gtid"
|
||||
sprintf(column,
|
||||
"%s",
|
||||
router->mariadb10_master_gtid
|
||||
? "Slave_pos"
|
||||
: "No");
|
||||
router->mariadb10_master_gtid ?
|
||||
"Slave_pos" :
|
||||
"No");
|
||||
col_len = strlen(column);
|
||||
*ptr++ = col_len; // Length of result string
|
||||
memcpy(ptr, column, col_len); // Result string
|
||||
@ -2301,9 +2301,9 @@ int blr_slave_catchup(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave, bool large)
|
||||
int rotating = 0;
|
||||
long burst_size;
|
||||
char read_errmsg[BINLOG_ERROR_MSG_LEN + 1];
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE
|
||||
? &slave->f_info
|
||||
: NULL;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE ?
|
||||
&slave->f_info :
|
||||
NULL;
|
||||
|
||||
read_errmsg[BINLOG_ERROR_MSG_LEN] = '\0';
|
||||
|
||||
@ -3205,9 +3205,9 @@ static int blr_slave_fake_rotate(ROUTER_INSTANCE* router,
|
||||
const char* sptr;
|
||||
int filenum;
|
||||
GWBUF* r_event;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE
|
||||
? &slave->f_info
|
||||
: NULL;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE ?
|
||||
&slave->f_info :
|
||||
NULL;
|
||||
|
||||
if ((sptr = strrchr(new_file, '.')) == NULL)
|
||||
{
|
||||
@ -3258,9 +3258,9 @@ static GWBUF* blr_slave_read_fde(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave)
|
||||
uint8_t* ptr;
|
||||
uint32_t chksum;
|
||||
char err_msg[BINLOG_ERROR_MSG_LEN + 1];
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE
|
||||
? &slave->f_info
|
||||
: NULL;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE ?
|
||||
&slave->f_info :
|
||||
NULL;
|
||||
|
||||
err_msg[BINLOG_ERROR_MSG_LEN] = '\0';
|
||||
|
||||
@ -4258,9 +4258,9 @@ namespace
|
||||
|
||||
int validate_connection_name(ROUTER_INSTANCE* router, const std::string& name, char* error)
|
||||
{
|
||||
static const char DEFAULT_MESSAGE[]
|
||||
= "If a connection name is provided, it must be of the format ':N' where N "
|
||||
"is an integer larger than 1.";
|
||||
static const char DEFAULT_MESSAGE[] =
|
||||
"If a connection name is provided, it must be of the format ':N' where N "
|
||||
"is an integer larger than 1.";
|
||||
|
||||
int index = -1;
|
||||
|
||||
@ -4565,9 +4565,9 @@ int blr_handle_change_master(ROUTER_INSTANCE* router,
|
||||
|
||||
if (use_gtid.empty() || (strcasecmp(use_gtid.c_str(), "slave_pos") != 0))
|
||||
{
|
||||
static const char MESSAGE[]
|
||||
= "Secondary masters can only be used in conjunction with GTID based replication. "
|
||||
"Specify MASTER_USE_GTID=Slave_pos for the default master connection.";
|
||||
static const char MESSAGE[] =
|
||||
"Secondary masters can only be used in conjunction with GTID based replication. "
|
||||
"Specify MASTER_USE_GTID=Slave_pos for the default master connection.";
|
||||
mxb_assert(sizeof(MESSAGE) <= BINLOG_ERROR_MSG_LEN);
|
||||
strcpy(error, MESSAGE);
|
||||
return -1;
|
||||
@ -4610,8 +4610,8 @@ int blr_handle_change_master(ROUTER_INSTANCE* router,
|
||||
|
||||
if (!use_gtid.empty() && (strcasecmp(use_gtid.c_str(), "slave_pos") != 0))
|
||||
{
|
||||
static const char MESSAGE[]
|
||||
= "Only MASTER_USE_GTID=Slave_pos is allowed.";
|
||||
static const char MESSAGE[] =
|
||||
"Only MASTER_USE_GTID=Slave_pos is allowed.";
|
||||
mxb_assert(sizeof(MESSAGE) <= BINLOG_ERROR_MSG_LEN);
|
||||
strcpy(error, MESSAGE);
|
||||
return -1;
|
||||
@ -5848,9 +5848,9 @@ static int blr_slave_show_warnings(ROUTER_INSTANCE* router, ROUTER_SLAVE* slave)
|
||||
msg_ptr = strchr(slave->warning_msg, ':');
|
||||
if (msg_ptr)
|
||||
{
|
||||
size_t len = (msg_ptr - slave->warning_msg > 16)
|
||||
? 16
|
||||
: (msg_ptr - slave->warning_msg);
|
||||
size_t len = (msg_ptr - slave->warning_msg > 16) ?
|
||||
16 :
|
||||
(msg_ptr - slave->warning_msg);
|
||||
memcpy(err_code, slave->warning_msg, len);
|
||||
err_code[len] = 0;
|
||||
code_len = strlen(err_code);
|
||||
@ -6479,9 +6479,9 @@ static int blr_slave_read_ste(ROUTER_INSTANCE* router,
|
||||
uint8_t* ptr;
|
||||
uint32_t chksum;
|
||||
char err_msg[BINLOG_ERROR_MSG_LEN + 1];
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE
|
||||
? &slave->f_info
|
||||
: NULL;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE ?
|
||||
&slave->f_info :
|
||||
NULL;
|
||||
|
||||
err_msg[BINLOG_ERROR_MSG_LEN] = '\0';
|
||||
|
||||
@ -6524,8 +6524,8 @@ static int blr_slave_read_ste(ROUTER_INSTANCE* router,
|
||||
{
|
||||
uint8_t* record_ptr = GWBUF_DATA(record);
|
||||
void* mem = MXS_CALLOC(1, sizeof(SLAVE_ENCRYPTION_CTX));
|
||||
SLAVE_ENCRYPTION_CTX* new_encryption_ctx
|
||||
= static_cast<SLAVE_ENCRYPTION_CTX*>(mem);
|
||||
SLAVE_ENCRYPTION_CTX* new_encryption_ctx =
|
||||
static_cast<SLAVE_ENCRYPTION_CTX*>(mem);
|
||||
|
||||
if (!new_encryption_ctx)
|
||||
{
|
||||
@ -6849,9 +6849,9 @@ static bool blr_handle_simple_select_stmt(ROUTER_INSTANCE* router,
|
||||
|
||||
sprintf(max_conns,
|
||||
"%d",
|
||||
!router->service->max_connections
|
||||
? BLR_DEFAULT_MAX_CONNS
|
||||
: router->service->max_connections);
|
||||
!router->service->max_connections ?
|
||||
BLR_DEFAULT_MAX_CONNS :
|
||||
router->service->max_connections);
|
||||
strcpy(heading, word);
|
||||
|
||||
blr_slave_send_var_value(router,
|
||||
@ -7531,9 +7531,9 @@ static bool blr_handle_show_stmt(ROUTER_INSTANCE* router,
|
||||
}
|
||||
else
|
||||
{
|
||||
const char* errmsg
|
||||
= "SHOW [FULL] BINARY LOGS needs the"
|
||||
" 'mariadb10_slave_gtid' option to be set.";
|
||||
const char* errmsg =
|
||||
"SHOW [FULL] BINARY LOGS needs the"
|
||||
" 'mariadb10_slave_gtid' option to be set.";
|
||||
MXS_ERROR("%s: %s",
|
||||
errmsg,
|
||||
router->service->name);
|
||||
@ -7859,15 +7859,15 @@ static bool blr_handle_set_stmt(ROUTER_INSTANCE* router,
|
||||
const char* err_msg_s = "stopped replication: issue STOP SLAVE first.";
|
||||
char error_string[BINLOG_ERROR_MSG_LEN + 1] = "";
|
||||
MXS_ERROR("GTID registration without %s",
|
||||
router->master_state == BLRM_SLAVE_STOPPED
|
||||
? err_msg_s : err_msg_u);
|
||||
router->master_state == BLRM_SLAVE_STOPPED ?
|
||||
err_msg_s : err_msg_u);
|
||||
|
||||
snprintf(error_string,
|
||||
BINLOG_ERROR_MSG_LEN,
|
||||
"Cannot use Master GTID registration without %s",
|
||||
router->master_state == BLRM_SLAVE_STOPPED
|
||||
? err_msg_s
|
||||
: err_msg_u);
|
||||
router->master_state == BLRM_SLAVE_STOPPED ?
|
||||
err_msg_s :
|
||||
err_msg_u);
|
||||
|
||||
blr_slave_send_error_packet(slave,
|
||||
error_string,
|
||||
@ -8062,9 +8062,9 @@ static bool blr_handle_admin_stmt(ROUTER_INSTANCE* router,
|
||||
}
|
||||
else
|
||||
{
|
||||
const char* errmsg
|
||||
= "PURGE BINARY LOGS needs the "
|
||||
"'mariadb10_slave_gtid' option to be set.";
|
||||
const char* errmsg =
|
||||
"PURGE BINARY LOGS needs the "
|
||||
"'mariadb10_slave_gtid' option to be set.";
|
||||
MXS_ERROR("%s: %s",
|
||||
errmsg,
|
||||
router->service->name);
|
||||
@ -8408,9 +8408,9 @@ static void blr_slave_skip_empty_files(ROUTER_INSTANCE* router,
|
||||
unsigned int seqno;
|
||||
bool skipped_files = false;
|
||||
char t_prefix[BINLOG_FILE_EXTRA_INFO] = "";
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE
|
||||
? &slave->f_info
|
||||
: NULL;
|
||||
MARIADB_GTID_INFO* f_tree = router->storage_type == BLR_BINLOG_STORAGE_TREE ?
|
||||
&slave->f_info :
|
||||
NULL;
|
||||
char next_file[BINLOG_FNAMELEN + 1] = "";
|
||||
|
||||
// Save the current router binlog filename
|
||||
@ -8591,9 +8591,9 @@ static int blr_show_binary_logs(ROUTER_INSTANCE* router,
|
||||
*/
|
||||
|
||||
if (sqlite3_exec(router->gtid_maps,
|
||||
!result.use_tree
|
||||
? select_query
|
||||
: select_query_full,
|
||||
!result.use_tree ?
|
||||
select_query :
|
||||
select_query_full,
|
||||
binary_logs_select_cb,
|
||||
&result,
|
||||
&errmsg) != SQLITE_OK)
|
||||
@ -8765,9 +8765,9 @@ static int binary_logs_select_cb(void* data,
|
||||
blr_get_file_fullpath(values[0],
|
||||
data_set->binlogdir,
|
||||
file_path,
|
||||
data_set->use_tree
|
||||
? t_prefix
|
||||
: NULL);
|
||||
data_set->use_tree ?
|
||||
t_prefix :
|
||||
NULL);
|
||||
// Get the file size
|
||||
fsize = blr_slave_get_file_size(file_path);
|
||||
|
||||
@ -8854,9 +8854,9 @@ static int blr_slave_send_id_ro(ROUTER_INSTANCE* router,
|
||||
/* Set identy for MySQL replication monitor */
|
||||
sprintf(server_id,
|
||||
"%d",
|
||||
router->set_master_server_id
|
||||
? router->masterid
|
||||
: router->serverid);
|
||||
router->set_master_server_id ?
|
||||
router->masterid :
|
||||
router->serverid);
|
||||
|
||||
if ((pkt = blr_create_result_row(server_id, // File name
|
||||
"0", // o = OFF
|
||||
@ -8957,9 +8957,9 @@ static int binary_logs_purge_cb(void* data,
|
||||
char full_path[PATH_MAX + 1];
|
||||
|
||||
/* values[0] is filename, values[1] is prefix + file */
|
||||
filename = !result_data->use_tree
|
||||
? values[0]
|
||||
: values[1];
|
||||
filename = !result_data->use_tree ?
|
||||
values[0] :
|
||||
values[1];
|
||||
|
||||
sprintf(full_path, "%s/%s", result_data->binlogdir, filename);
|
||||
|
||||
@ -9230,10 +9230,10 @@ static void blr_log_config_changes(ROUTER_INSTANCE* router,
|
||||
}
|
||||
|
||||
/* Prepare GTID msg */
|
||||
const char* gtid_msg
|
||||
= !change_master.use_mariadb10_gtid.empty()
|
||||
? ", MASTER_USE_GTID=Slave_pos"
|
||||
: "";
|
||||
const char* gtid_msg =
|
||||
!change_master.use_mariadb10_gtid.empty() ?
|
||||
", MASTER_USE_GTID=Slave_pos" :
|
||||
"";
|
||||
|
||||
/* Log previous state and new changes */
|
||||
MXS_NOTICE("%s: 'CHANGE MASTER TO executed'. Previous state "
|
||||
@ -9449,9 +9449,9 @@ static bool blr_binlog_change_check(const ROUTER_INSTANCE* router,
|
||||
snprintf(error,
|
||||
BINLOG_ERROR_MSG_LEN,
|
||||
"%s MASTER_USE_GTID=Slave_pos is required",
|
||||
router->master_state == BLRM_UNCONFIGURED
|
||||
? "Router is not configured for master connection,"
|
||||
: "Cannot use MASTER_LOG_FILE for master connection,");
|
||||
router->master_state == BLRM_UNCONFIGURED ?
|
||||
"Router is not configured for master connection," :
|
||||
"Cannot use MASTER_LOG_FILE for master connection,");
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -862,9 +862,9 @@ int main(int argc, char** argv)
|
||||
/**
|
||||
* Verify SQL query initial comment skipping function works on a real use case.
|
||||
*/
|
||||
const char* mysql_connector_j_actual
|
||||
= blr_skip_leading_sql_comments(
|
||||
"/* mysql-connector-java-5.1.39 ( Revision: 3289a357af6d09ecc1a10fd3c26e95183e5790ad ) */SELECT @@session.auto_increment_increment AS auto_increment_increment, @@character_set_client AS character_set_client, @@character_set_connection AS character_set_connection, @@character_set_results AS character_set_results, @@character_set_server AS character_set_server, @@init_connect AS init_connect, @@interactive_timeout AS interactive_timeout, @@license AS license, @@lower_case_table_names AS lower_case_table_names, @@max_allowed_packet AS max_allowed_packet, @@net_buffer_length AS net_buffer_length, @@net_write_timeout AS net_write_timeout, @@query_cache_size AS query_cache_size, @@query_cache_type AS query_cache_type, @@sql_mode AS sql_mode, @@system_time_zone AS system_time_zone, @@time_zone AS time_zone, @@tx_isolation AS tx_isolation, @@wait_timeout AS wait_timeout");
|
||||
const char* mysql_connector_j_actual =
|
||||
blr_skip_leading_sql_comments(
|
||||
"/* mysql-connector-java-5.1.39 ( Revision: 3289a357af6d09ecc1a10fd3c26e95183e5790ad ) */SELECT @@session.auto_increment_increment AS auto_increment_increment, @@character_set_client AS character_set_client, @@character_set_connection AS character_set_connection, @@character_set_results AS character_set_results, @@character_set_server AS character_set_server, @@init_connect AS init_connect, @@interactive_timeout AS interactive_timeout, @@license AS license, @@lower_case_table_names AS lower_case_table_names, @@max_allowed_packet AS max_allowed_packet, @@net_buffer_length AS net_buffer_length, @@net_write_timeout AS net_write_timeout, @@query_cache_size AS query_cache_size, @@query_cache_type AS query_cache_type, @@sql_mode AS sql_mode, @@system_time_zone AS system_time_zone, @@time_zone AS time_zone, @@tx_isolation AS tx_isolation, @@wait_timeout AS wait_timeout");
|
||||
const char* mysql_connector_j_expected
|
||||
=
|
||||
"SELECT @@session.auto_increment_increment AS auto_increment_increment, @@character_set_client AS character_set_client, @@character_set_connection AS character_set_connection, @@character_set_results AS character_set_results, @@character_set_server AS character_set_server, @@init_connect AS init_connect, @@interactive_timeout AS interactive_timeout, @@license AS license, @@lower_case_table_names AS lower_case_table_names, @@max_allowed_packet AS max_allowed_packet, @@net_buffer_length AS net_buffer_length, @@net_write_timeout AS net_write_timeout, @@query_cache_size AS query_cache_size, @@query_cache_type AS query_cache_type, @@sql_mode AS sql_mode, @@system_time_zone AS system_time_zone, @@time_zone AS time_zone, @@tx_isolation AS tx_isolation, @@wait_timeout AS wait_timeout";
|
||||
@ -894,8 +894,8 @@ int main(int argc, char** argv)
|
||||
|
||||
tests++;
|
||||
|
||||
const char* unclosed_comment_query_actual
|
||||
= blr_skip_leading_sql_comments("/* SELECT foo FROM bar LIMIT 1");
|
||||
const char* unclosed_comment_query_actual =
|
||||
blr_skip_leading_sql_comments("/* SELECT foo FROM bar LIMIT 1");
|
||||
const char* unclosed_comment_query_expected = "";
|
||||
if (strcmp(unclosed_comment_query_actual, unclosed_comment_query_expected) == 0)
|
||||
{
|
||||
|
Reference in New Issue
Block a user