Это сводится к тому, что когда кластер разделяется, все узлы, вероятно, не разделяются одновременно.
Рассмотрим один раздел данных (сегмент) Aerospike. Мастер-копия из предыдущего режима находится на стороне меньшинства раздела без всех его копий, после чего она должна отказаться от мастерства, в то время как копия в новом режиме должна стать мастером. Поскольку мы находимся в сетевом разделе, эти два узла не могут координировать этот обмен. Мастер из предыдущего режима может получить чтение, прежде чем определить, что он больше не мастер. Для обеспечения линеаризованного чтения транзакция чтения создает репликационный пинг, который включает текущий режим, который, по мнению мастера, включен. Если какая-либо реплика сообщает, что режим продвинулся, то чтение завершается неудачно, в противном случае репликация позволяет продолжить транзакцию.
Если какая-либо новая запись могла завершиться в новом режиме, то на основе правил живости, гарантируется, что любое линеаризованное чтение со старым режимом завершится неудачей.