Истечение времени ожидания драйвера Cassandra nodejs после перемещения узла

Мы используем vnodes в нашем кластере.

Я заметил, что когда пространство токенов узла изменяется (автоматически на vnodes, во время ремонта или очистки после добавления новых узлов), драйвер datastax nodejs получает много сообщений «Время ожидания операции истекло — получены только ответы X» в течение нескольких минут. .

Я пытался использовать консистенции ONE и LOCAL_QUORUM.

Я предполагаю, что это связано с тем, что координатор не попал в нужный узел сразу после перемещения. Это кажется логичным поведением (данные были перемещены), но мы действительно хотим решить эту конкретную проблему.

Ребята, что вы предлагаете делать, чтобы этого избежать? У вас есть собственная политика повторных попыток? Кэширование? Изменение консистенции?

Пример поведения

когда мы видим это:

4/7/2016, 10:43am   Info    Host 172.31.34.155 moved from '8185241953623605265' to '-1108852503760494577'

Мы видим всплеск из них:

{
  "message":"Operation timed out - received only 0 responses.",
  "info":"Represents an error message from the server",
  "code":4608,
  "consistencies":1,
  "received":0,
  "blockFor":1,
  "isDataPresent":0,
  "coordinator":"172.31.34.155:9042",
  "query":"SELECT foo FROM foo_bar LIMIT 10"
}

person Vincent de Lagabbe    schedule 07.04.2016    source источник


Ответы (1)


Я предполагаю, что это связано с тем, что координатор не попал в нужный узел сразу после перемещения. Это кажется логичным поведением (данные были перемещены), но мы действительно хотим решить эту конкретную проблему.

На самом деле, при добавлении нового узла произойдет перемещение диапазона токенов, но Cassandra по-прежнему сможет обслуживать запросы на чтение, используя старые диапазоны токенов, пока масштабирование не будет полностью завершено. Так что поведение, с которым вы столкнулись, очень подозрительно.

Если вы можете воспроизвести эту ошибку, активируйте отслеживание запросов, чтобы сузить круг проблемы.

Ошибка также может быть связана с тем, что узел находится под большой нагрузкой и не отвечает достаточно быстро.

person doanduyhai    schedule 07.04.2016
comment
Я проверил журналы более подробно, и, по-видимому, это произошло только с этим конкретным хостом. Забавно то, что он постоянно перемещается из одного диапазона в другой и обратно к предыдущему. Я постараюсь расследовать это. Спасибо за ваш ответ, как вы говорите, это кажется несвязанным. - person Vincent de Lagabbe; 08.04.2016
comment
Ответил на другой вопрос по связанной проблеме stackoverflow.com/questions/36593636/ - person Vincent de Lagabbe; 13.04.2016