Cleaner handling of global_system_variables.wsrep_on
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MySQL patches by Codership |
New
|
Undecided
|
Unassigned |
Bug Description
While going through the code I found that global value of wsrep_on is flipped quite a number of times. This may lead to confusion and bugs.
For instance :
a) In init_common_
...
/* This is a protection against mutually incompatible option values. */
if (WSREP_ON && wsrep_check_opts (remaining_argc, remaining_argv))
global_
...
b) Later its back to ON during option handing (default ON).
...
if (get_options(
...
c) Then its set again in wsrep_init() based on wsrep_provider's value.
Eventually, the node will be up given a valid provider is specified. But this was not intended according to (a).
Step (b) turns it back ON as @@global.wsrep_on is ON by default.