MXS-2456: Cap transaction replay attempts
In most cases it is reasonable to stop attempting transaction replays after a certain number of failed attempts. This prevents transactions from being repeatedly replayed on the same server over and over again if, for example, it keeps crashing.
This commit is contained in:
@ -504,25 +504,26 @@ extern "C" MXS_MODULE* MXS_CREATE_MODULE()
|
||||
MXS_MODULE_OPT_NONE,
|
||||
master_failure_mode_values
|
||||
},
|
||||
{"max_slave_replication_lag", MXS_MODULE_PARAM_DURATION, "0s", MXS_MODULE_OPT_DURATION_S },
|
||||
{"max_slave_connections", MXS_MODULE_PARAM_STRING, MAX_SLAVE_COUNT},
|
||||
{"retry_failed_reads", MXS_MODULE_PARAM_BOOL, "true" },
|
||||
{"prune_sescmd_history", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"disable_sescmd_history", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"max_sescmd_history", MXS_MODULE_PARAM_COUNT, "50" },
|
||||
{"strict_multi_stmt", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"strict_sp_calls", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"master_accept_reads", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"connection_keepalive", MXS_MODULE_PARAM_DURATION, "300s", MXS_MODULE_OPT_DURATION_S },
|
||||
{"causal_reads", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"causal_reads_timeout", MXS_MODULE_PARAM_DURATION, "10s", MXS_MODULE_OPT_DURATION_S },
|
||||
{"master_reconnection", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"delayed_retry", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"delayed_retry_timeout", MXS_MODULE_PARAM_DURATION, "10s", MXS_MODULE_OPT_DURATION_S },
|
||||
{"transaction_replay", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"transaction_replay_max_size",MXS_MODULE_PARAM_SIZE, "1Mi" },
|
||||
{"optimistic_trx", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"lazy_connect", MXS_MODULE_PARAM_BOOL, "false" },
|
||||
{"max_slave_replication_lag", MXS_MODULE_PARAM_DURATION, "0s", MXS_MODULE_OPT_DURATION_S},
|
||||
{"max_slave_connections", MXS_MODULE_PARAM_STRING, MAX_SLAVE_COUNT},
|
||||
{"retry_failed_reads", MXS_MODULE_PARAM_BOOL, "true"},
|
||||
{"prune_sescmd_history", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"disable_sescmd_history", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"max_sescmd_history", MXS_MODULE_PARAM_COUNT, "50"},
|
||||
{"strict_multi_stmt", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"strict_sp_calls", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"master_accept_reads", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"connection_keepalive", MXS_MODULE_PARAM_DURATION, "300s", MXS_MODULE_OPT_DURATION_S},
|
||||
{"causal_reads", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"causal_reads_timeout", MXS_MODULE_PARAM_DURATION, "10s", MXS_MODULE_OPT_DURATION_S},
|
||||
{"master_reconnection", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"delayed_retry", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"delayed_retry_timeout", MXS_MODULE_PARAM_DURATION, "10s", MXS_MODULE_OPT_DURATION_S},
|
||||
{"transaction_replay", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"transaction_replay_max_size",MXS_MODULE_PARAM_SIZE, "1Mi"},
|
||||
{"transaction_replay_attempts",MXS_MODULE_PARAM_COUNT, "5"},
|
||||
{"optimistic_trx", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{"lazy_connect", MXS_MODULE_PARAM_BOOL, "false"},
|
||||
{MXS_END_MODULE_PARAMS}
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user