Я сейчас играю с кластером Percona XtraDB, который основан на кластере Galera.В Galera docs я видел следующее : Warning: When using Galera Cluster in master-slave mode, all four levels are available to you, to the extend that MySQL supports it. In multi-master mode, however, you can only use the REPEATABLE-READ level.
И проблема в том, что мое приложение использует READ-COMMITTED
уровень изоляции.Поэтому я хочу узнать, как работает Galera с этим уровнем изоляции.Согласно вышеупомянутому предупреждению, Galera должна работать только в режиме «ведущий-ведомый».Это означает, что только один узел должен разрешать запись.
Но я провел эксперимент: имея кластер с 3 узлами (на одном ПК с использованием Docker), я изменил уровень изоляции на всех узлах на READ-COMMITTED, перезапустилэти узлы и пытались выполнить запросы на запись на каждом узле - все выполнено успешно, что противоречит приведенному выше предупреждению.
Итак, вот мои вопросы:
- Как Galera реагирует на уровни изоляции, отличные от «REPEATABLE-READ»?
- Как проверить, работает ли кластер в режиме мастер-мастер или мастер-подчиненный?Разве подчиненные узлы не должны отклонять запросы на запись?