powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
4 сообщений из 4, страница 1 из 1
Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
    #38499383
AYTereschenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть у нас Cassandra кластер из двух нод (версия 2.0.2):
Код: plaintext
1.
2.
192.168.56.11=DC1:RAC1
192.168.56.12=DC1:RAC2

и keyspace с RF=2:
Код: plaintext
CREATE KEYSPACE test_dc1 WITH replication = {'class':'NetworkTopologyStrategy', 'DC1':2};

Коннекчусь я к этому кластеру через Datastax Java Driver 1.0.4 и читаю/пишу данные с CL=ONE. Если одну ноду потушить, то почти всегда это происходит безболезненно: все продолжает работать через оставшуюся ноду. Но иногда драйвер при отключении одной ноды теряет коннекты сразу к обоим нодам, и я получаю кучу исключений вида:
Код: plaintext
1.
2.
3.
4.
5.
[Thread-1] [ERROR] Read error: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /192.168.56.11 ([/192.168.56.11] Connection has been closed))
[Thread-2] [ERROR] Read error: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /192.168.56.12 ([/192.168.56.12] Connection has been closed))
[Cassandra Java Driver blocking tasks worker-1] [ERROR] [Control connection] Cannot connect to any host, scheduling retry
2013-12-13 01:43:50,776 [Thread-2] [ERROR] Read error: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (no host was tried)
2013-12-13 01:43:50,776 [Thread-1] [ERROR] Read error: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (no host was tried)

При этом RetryPolicy не срабатывает. Через некоторое время драйвер восстанавливает коннект к оставшейся ноде и продолжает нормально работать.

Собственно, что я делаю не так? Как обеспечить бесперебойную работу с кластером в случае, если хотя бы одна живая нода всегда имеется в наличии? Разве не должен драйвер сам разруливать падение одной из нод? Почему RetryPolicy в данном случае не срабатывает?
...
Рейтинг: 0 / 0
Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
    #38502082
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык обе же ноды отвалились. Надо разбираться почему. Он не смог соединится с двумя, откуда уверенность что одна активна и доступна?
...
Рейтинг: 0 / 0
Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
    #38502135
AYTereschenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дык я ж руками отключаю одну ноду, а вторая при этом остается жить, и я к ней по cqlsh подключаюсь и вижу, что она живая.
...
Рейтинг: 0 / 0
Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
    #38502143
AYTereschenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Собственно поэтому и непонятно, как сделать бесперебойное подключение к кластеру. Иногда бывает нужно отключить одну из нод для мейнтенанса, а драйвер при этом теряет коннекты ко всем остальным и ругается. Как тогда работать вообще?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Cassandra, Datastax Java Driver и NoHostAvailableException при отключении ноды
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]