MXS-2920: Allow max_slave_replication_lag=0
A requirement of no lag should be allowed. The reason why it wasn't was simply due to the selection of the default value.
This commit is contained in:
@ -502,7 +502,12 @@ extern "C" MXS_MODULE* MXS_CREATE_MODULE()
|
|||||||
MXS_MODULE_OPT_NONE,
|
MXS_MODULE_OPT_NONE,
|
||||||
master_failure_mode_values
|
master_failure_mode_values
|
||||||
},
|
},
|
||||||
{"max_slave_replication_lag", MXS_MODULE_PARAM_DURATION, "0s", MXS_MODULE_OPT_DURATION_S},
|
{
|
||||||
|
"max_slave_replication_lag",
|
||||||
|
MXS_MODULE_PARAM_DURATION,
|
||||||
|
DEFAULT_MAX_SLAVE_REPLICATION_LAG_STR,
|
||||||
|
MXS_MODULE_OPT_DURATION_S
|
||||||
|
},
|
||||||
{"max_slave_connections", MXS_MODULE_PARAM_STRING, MAX_SLAVE_COUNT},
|
{"max_slave_connections", MXS_MODULE_PARAM_STRING, MAX_SLAVE_COUNT},
|
||||||
{"retry_failed_reads", MXS_MODULE_PARAM_BOOL, "true"},
|
{"retry_failed_reads", MXS_MODULE_PARAM_BOOL, "true"},
|
||||||
{"prune_sescmd_history", MXS_MODULE_PARAM_BOOL, "false"},
|
{"prune_sescmd_history", MXS_MODULE_PARAM_BOOL, "false"},
|
||||||
|
@ -124,6 +124,9 @@ static const char gtid_wait_stmt[] =
|
|||||||
"SET @maxscale_secret_variable=(SELECT CASE WHEN %s('%s', %s) = 0 "
|
"SET @maxscale_secret_variable=(SELECT CASE WHEN %s('%s', %s) = 0 "
|
||||||
"THEN 1 ELSE (SELECT 1 FROM INFORMATION_SCHEMA.ENGINES) END);";
|
"THEN 1 ELSE (SELECT 1 FROM INFORMATION_SCHEMA.ENGINES) END);";
|
||||||
|
|
||||||
|
static const char DEFAULT_MAX_SLAVE_REPLICATION_LAG_STR[] = "2147483647s";
|
||||||
|
static const int DEFAULT_MAX_SLAVE_REPLICATION_LAG = 2147483647;
|
||||||
|
|
||||||
/** Function that returns a "score" for a server to enable comparison.
|
/** Function that returns a "score" for a server to enable comparison.
|
||||||
* Smaller numbers are better.
|
* Smaller numbers are better.
|
||||||
*/
|
*/
|
||||||
|
@ -735,7 +735,7 @@ int RWSplitSession::get_max_replication_lag()
|
|||||||
int conf_max_rlag = SERVER::RLAG_UNDEFINED;
|
int conf_max_rlag = SERVER::RLAG_UNDEFINED;
|
||||||
|
|
||||||
/** if there is no configured value, then longest possible int is used */
|
/** if there is no configured value, then longest possible int is used */
|
||||||
if (m_config.max_slave_replication_lag > 0)
|
if (m_config.max_slave_replication_lag != DEFAULT_MAX_SLAVE_REPLICATION_LAG)
|
||||||
{
|
{
|
||||||
conf_max_rlag = m_config.max_slave_replication_lag;
|
conf_max_rlag = m_config.max_slave_replication_lag;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user