Comments - Web Applications do not receive all data in Galera Cluster
Content reproduced on this site is the property of its respective owners,
and this content is not reviewed in advance by MariaDB. The views, information and opinions
expressed by this content do not necessarily represent those of MariaDB or any other party.
Hi, This is a result of Galera synchrony being "virtual". If your application is picky about "stale" data and you want to randomly load-balance connections, you should set wsrep_causal_reads=ON. This will ensure that your application always gets what it has written - at some performance cost. Alternatively you may opt to reread the data if you can determine that it is stale, or use some sort of "sticky" balancing, routing related requests to the same node.
Regards, Alex
Alex, many thanks for the help. Is it wsrep_causal_reads=1 or wsrep_causal_reads=ON
(or does it really matter)
Is the best way of doing this by modifying the /etc/my.cnf in all the backend sql servers or should I just perform the below sql statement: set global wsrep_causal_reads=1;
I do really appreciate your responses.
I believe 1 and ON are equivalent for boolean variables. This wsrep_causal_reads is a session variable, so you can both set it in my.cnf and/or enable via client - either globally or for the session. In other words enabling it does not require server restart.