Hi Serg, On Mon, Jun 27, 2016 at 7:38 AM, Sergei Golubchik <[email protected]> wrote:
> Hi, Nirbhay! > > On Jun 08, Nirbhay Choubey wrote: > > revision-id: 075233312cc5bc6c242f4629f8293d4c67937f02 > (mariadb-10.1.14-10-g0752333) > > parent(s): c9f05974e618a869563f2360ef1ca910974a4f1c > > author: Nirbhay Choubey > > committer: Nirbhay Choubey > > timestamp: 2016-06-08 16:03:01 -0400 > > message: > > > > MDEV-10161: wsrep_sync_wait not enabled when set to 1 in config file > > > > Since wsrep_sync_wait & wsrep_causal_reads variables are related, > > they are always kept in sync whenever one of them changes. > > Same is tried on server start, where wsrep_sync_wait get updated > > based on wsrep_causal_reads' value. But, since wsrep_causal_reads > > is OFF by default, wsrep_sync_wait's value gets modified and loses > > its WSREP_SYNC_WAIT_BEFORE_READ bit. > > > > Fixed by giving higher precedence to one that's explicitly set to > > a non-default value and later to wsrep_sync_wait in case both are > > set. > > > > diff --git a/sql/wsrep_mysqld.cc b/sql/wsrep_mysqld.cc > > index d0798ef..fffb0cc 100644 > > --- a/sql/wsrep_mysqld.cc > > +++ b/sql/wsrep_mysqld.cc > > @@ -567,7 +567,39 @@ int wsrep_init() > > > > wsrep_sst_auth_init(wsrep_sst_auth); > > > > - wsrep_causal_reads_update(&global_system_variables); > > + /* > > + On server start, there is no way to detect whether the default value > > + for a system variable was set explicitly by the user. > > + Now, since wsrep_causal_reads & wsrep_sync_wait are used for same > > + purpose, a rule of precedence must be defined to keep their values > > + in sync. It goes as following: > > This is wrong. First, in 10.1 there is a way to detect whether the value > was set by a user. I_S.SYSTEM_VARIABLES can show that. > sys_var::value_origin == CONFIG. I wasn't aware of that. > But even if you'd detected that, it won't help you do distinguish > between > > mysqld --wsrep-sync-wait=1 --wsrep-causal-reads=0 > mysqld --wsrep-sync-wait=0 --wsrep-causal-reads=1 > > The only correct solution is to handle this in the mysqld_get_one_option > switch, updating the dependent option when one of these two is set. > Correct. I have committed another one using this approach. http://lists.askmonty.org/pipermail/commits/2016-June/009503.html Thank you. - Nirbhay > > Regards, > Sergei > Chief Architect MariaDB > and [email protected] >
_______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp

