2016-03-31 2 views
0

Версия Cassandra: dsc-cassandra-2.1.9Теперь получение ошибки «message =« Невозможно достичь уровня согласованности ONE »info = {'required_replicas': 1, 'alive_replicas': 0, 'consistency': 'ONE'}"

Имеет 3 узла, один из которых был отключен в течение длительного времени. Принесли его обратно и декомпилировали. Затем удалил узел nodetool.

Когда я пытаюсь выполнить запрос cql, я получаю вышеуказанную ошибку.

Первоначально предполагалось, что это может быть потому, что стратегия репликации была SimpleStrategy. Так сделал ALTER KEYSPACE history WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'dc1' : 2};

и изменил endpoint_snitch: GossipingPropertyFileSnitch вместо SimpleSnitch

сделал nodetool ремонт на обоих узлах и перезапущен Кассандры Services

Но проблема все еще существует. Что я делаю?

EDIT 1: Nodetool статус обрабатать

-- Address   Load  Tokens Owns Host ID        Rack 
UN 192.168.99.xxx 19.8 GB 256  ?  xxxxxxxx-xxxx-xxx-xxxx-xxxxx4ea RAC1 
UN 192.168.99.xxx 18.79 GB 256  ?  xxxxxxxx-xxxx-xxx-xxxx-xxxxxx15 RAC1 

nodetool выход состояния машины B

-- Address   Load  Tokens Owns Host ID        Rack 
UN 192.168.99.xxx 19.8 GB 256  ?  xxxxxxxx-xxxx-xxx-xxxx-xxxxxxxx4ea RAC1 
UN 192.168.99.xxx 18.79 GB 256  ?  xxxxxxxx-xxxx-xxx-xxxx-xxxxxxxxf15 RAC1 
+0

Почему вы сделали удаление после снятия с эксплуатации? Вам нужно только разбить. Кроме того, было бы полезно получить результат работы nodetool с обоими остальными узлами. –

+0

Добавлен вывод состояния выше. Идентификаторы хостов совпадают. Удалил ли он, потому что после состояния nodetool дезактивации все еще показывался выведенный из эксплуатации узел – GenerousJoker

ответ

0

Что странно, что под колоннами Владеет у вас нет%, только ?. Эта проблема возникла в прошлом, когда я загрузил новый кластер C * и использовал SimpleStrategy и SimpleSnitch. Мне понравилось, что вы ALTER KEYSPACE переключились на NetworkTopology и GossipingPropertyFileSnitch, но это не решило мою проблему, поэтому я перестроил кластер с нуля (к счастью, у меня не было данных внутри)

Если у вас есть резервная копия данных, попробуйте перестроить 2 узла с нуля.

В противном случае рассмотрите резервное копирование ваших sstable-файлов на одном узле и перестройте кластер и верните sstables. Будьте осторожны, потому что может потребоваться некоторое имя файла/переименование папки

Смежные вопросы