Details
Description
Some wsrep provider options only validate the first character of the value when setting it dynamically. This causes the wsrep options to be set to an invalid value and those options in wsrep_provider_options to have a truncated value.
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD=Panyvalue;
|
Query OK, 0 rows affected (0.000 sec)
|
|
node2:root@localhost>
|
node2:root@localhost> SELECT @@WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD;
|
+----------------------------------------------+
|
| @@WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD |
|
+----------------------------------------------+
|
| Panyvalue |
|
+----------------------------------------------+
|
1 row in set (0.013 sec)
|
|
node2:root@localhost>
|
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD=anyvalue;
|
ERROR 1231 (42000): Variable 'evs_causal_keepalive_period' can't be set to the value of 'anyvalue'
|
node2:root@localhost>
|
WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD will have a truncated value in wsrep_provider_options.
node2:root@localhost> select @@wsrep_provider_options\G
|
*************************** 1. row ***************************
|
@@wsrep_provider_options: base_dir = /test/mtest/GAL_MD281122-mariadb-10.11.2-linux-x86_64-dbg/node2/; base_host = 127.0.0.1; base_port = 11842; cert.log_conflicts = no; cert.optimistic_pa = yes; debug = no; evs.auto_evict = 0; evs.causal_keepalive_period = P; [..]
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_DELAYED_KEEP_PERIOD=Pdummy;
|
Query OK, 0 rows affected (0.001 sec)
|
|
node2:root@localhost> select @@WSREP_PROVIDER_EVS_DELAYED_KEEP_PERIOD;
|
+------------------------------------------+
|
| @@WSREP_PROVIDER_EVS_DELAYED_KEEP_PERIOD |
|
+------------------------------------------+
|
| Pdummy |
|
+------------------------------------------+
|
1 row in set (0.000 sec)
|
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_DELAYED_KEEP_PERIOD=dummy;
|
ERROR 1231 (42000): Variable 'evs_delayed_keep_period' can't be set to the value of 'dummy'
|
node2:root@localhost>
|
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_DEBUG_LOG_MASK='1dummy';
|
Query OK, 0 rows affected (0.000 sec)
|
|
node2:root@localhost> select @@WSREP_PROVIDER_EVS_DEBUG_LOG_MASK;
|
+-------------------------------------+
|
| @@WSREP_PROVIDER_EVS_DEBUG_LOG_MASK |
|
+-------------------------------------+
|
| 1dummy |
|
+-------------------------------------+
|
1 row in set (0.031 sec)
|
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_DEBUG_LOG_MASK='dummy';
|
Query OK, 0 rows affected (0.000 sec)
|
|
node2:root@localhost> select @@WSREP_PROVIDER_EVS_DEBUG_LOG_MASK;
|
+-------------------------------------+
|
| @@WSREP_PROVIDER_EVS_DEBUG_LOG_MASK |
|
+-------------------------------------+
|
| dummy |
|
+-------------------------------------+
|
1 row in set (0.000 sec)
|
|
node2:root@localhost>
|
node2:root@localhost> SET GLOBAL WSREP_PROVIDER_EVS_DEBUG_LOG_MASK='ummy';
|
ERROR 1231 (42000): Variable 'evs_debug_log_mask' can't be set to the value of 'ummy'
|
node2:root@localhost>
|
These are the variables that have this issue.
WSREP_PROVIDER_EVS_CAUSAL_KEEPALIVE_PERIOD
|
WSREP_PROVIDER_EVS_DEBUG_LOG_MASK
|
WSREP_PROVIDER_EVS_DELAYED_KEEP_PERIOD
|
WSREP_PROVIDER_EVS_DELAY_MARGIN
|
WSREP_PROVIDER_EVS_INACTIVE_CHECK_PERIOD
|
WSREP_PROVIDER_EVS_INACTIVE_TIMEOUT
|
WSREP_PROVIDER_EVS_INFO_LOG_MASK
|
WSREP_PROVIDER_EVS_INSTALL_TIMEOUT
|
WSREP_PROVIDER_EVS_JOIN_RETRANS_PERIOD
|
WSREP_PROVIDER_EVS_KEEPALIVE_PERIOD
|
WSREP_PROVIDER_EVS_STATS_REPORT_PERIOD
|
WSREP_PROVIDER_EVS_SUSPECT_TIMEOUT
|
WSREP_PROVIDER_REPL_CAUSAL_READ_TIMEOUT
|
Attachments
Issue Links
- relates to
-
MDEV-22570 Split wsrep_provider_options in several options
- Closed