MXS-2011 Change return value of blr_check_connect_retry

0 cannot be used to indicate failure as 0 will be the waiting
period if we switch to an alternative server.

Also fix some minor issues; failure to initialize all members
and inverted success-check.
This commit is contained in:
Johan Wikman
2018-09-03 10:10:03 +03:00
parent 9826458700
commit ae28f8189b
3 changed files with 6 additions and 4 deletions

View File

@ -378,6 +378,8 @@ public:
ChangeMasterConfig(const char* name) ChangeMasterConfig(const char* name)
: connection_name(name) : connection_name(name)
, port(-1)
, ssl_enabled(false)
, heartbeat_period(BLR_HEARTBEAT_DEFAULT_INTERVAL_VALUE) , heartbeat_period(BLR_HEARTBEAT_DEFAULT_INTERVAL_VALUE)
, connect_retry(BLR_MASTER_CONNECT_RETRY_VALUE) , connect_retry(BLR_MASTER_CONNECT_RETRY_VALUE)
{ {

View File

@ -3331,7 +3331,7 @@ int blr_file_read_master_config(ROUTER_INSTANCE *router)
int rc = ini_parse(filename, blr_handler_config, router); int rc = ini_parse(filename, blr_handler_config, router);
if (rc == 1) if (rc == 0)
{ {
mxb_assert(router->configs.size() > 0); mxb_assert(router->configs.size() > 0);
blr_master_set_config(router, router->configs[0]); blr_master_set_config(router, router->configs[0]);

View File

@ -163,7 +163,7 @@ static void blr_start_master(void* data)
/* Check whether master connection can be started */ /* Check whether master connection can be started */
int connect_retry; int connect_retry;
if ((connect_retry = blr_check_connect_retry(router)) == 0) if ((connect_retry = blr_check_connect_retry(router)) == -1)
{ {
/* Force stopped state */ /* Force stopped state */
router->master_state = BLRM_SLAVE_STOPPED; router->master_state = BLRM_SLAVE_STOPPED;
@ -359,7 +359,7 @@ blr_restart_master(ROUTER_INSTANCE *router)
if (router->master_state < BLRM_BINLOGDUMP) if (router->master_state < BLRM_BINLOGDUMP)
{ {
int connect_retry; int connect_retry;
if ((connect_retry = blr_check_connect_retry(router)) == 0) if ((connect_retry = blr_check_connect_retry(router)) == -1)
{ {
/* Force stopped state */ /* Force stopped state */
router->master_state = BLRM_SLAVE_STOPPED; router->master_state = BLRM_SLAVE_STOPPED;
@ -3091,7 +3091,7 @@ static int blr_check_connect_retry(ROUTER_INSTANCE *router)
/* Stop reconnection to master */ /* Stop reconnection to master */
if (router->retry_count >= router->retry_limit) if (router->retry_count >= router->retry_limit)
{ {
return 0; return -1;
} }
/* Return the interval for next reconnect */ /* Return the interval for next reconnect */