Является ли это действительно проблемой в Cassandra Cluster "Требовалось 2 реплики, но только 1 подтвердил запись"
Недавно я установил кластер C* с 6 узлами (версия C*:3.0.13) и уровень согласованности QUORUM, имеющий RF=3. Я продолжаю видеть кучу следующих исключений.
Тайм-аут Cassandra во время ПРОСТОГО запроса на запись при согласованности QUORUM (требовалось 2 реплики, но только 1 подтвердил запись)
Я понимаю, то есть они будут записаны в другие узлы в конце концов, но я все еще пытаюсь найти причину для того же.
Пожалуйста, пролите немного света на то же самое, если можно продолжить ИЛИ что-нибудь, за чем я должен следить, чтобы улучшить код?
Высоко ценим ваш ответ!
2 ответа
Кажется, что ваши узлы Кассандры внутренне не сплетничают или некоторые узлы не подключены должным образом. Пожалуйста, включите трассировку в cqlsh и попробуйте то же самое. Кроме того, запустите nodetool descriptioncluster перед выполнением запроса.
Да, это определенно проблема. Запись не будет успешной, если не будет достигнута требуемая согласованность.
В вашем случае, когда у вас есть
RF:3
, похоже, что приложение пишет с постоянством
LOCAL_QUORUM
поэтому как минимум 2 реплики должны подтвердить запись, чтобы операция была успешной.
Это не проблема вашего кода. Вам необходимо выяснить, почему узлы не отвечают или не работают, поэтому на запросы записи отвечает недостаточно реплик. Ваше здоровье!