Currently I am using thee nodes system -
with 2 nodes of MySql instances and one node with Galera Arbitrator installed on it.
When shutting down nodes gracefully, with the arbitrator as the last node to be shut down - safe_to_bootstrap parameter value is not set to 1, on neither of mysql server nodes.
Is this the default behaviour by design ?
Is it possible to have safe_to_bootstrap parameter value set to 1 on the last of the mysql node being shut down, even in case when last node to be shut down is Arbitrator’s node ?
Interesting question. By theory, the last node that safely leaves the cluster will have the safe_to_bootstrap set to 1. If garbd is the last to go down, ofcourse it doesn’t really maintain the data and cannot be bootstrapped => no point of safe_to_bootstrap there.
The secondlast node doesn’t really have a way to know that the last node of the cluster is garbd or not! I have not tested this behaviour but if we’re doing a graceful shutdown, arbitrator should be the first one to go down and we will have no such questions.
If you’ve already performed out of order shutdowns, you can always use wsrep-recover to identify the last txn to exec and start from there.
Finally to answer your question:
“Is this the default behaviour by design ?” → I believe so. Have not checked. “Is it possible to have safe_to_boot… last node to be shut down is Arbitrator’s node ?” → If it is graceful process, shutdown arbitrator first.