Любая причина, по которой com.datastax.driver.core.Metadata:getHosts()
возвращает состояние UP
для хоста, который выключен?
Однако nodetool status
возвращает DN
для этого хоста.
Независимо от того, сколько раз я проверяю Host.getState()
, он все равно говорит UP
для этого мертвого хоста.
Вот как я запрашиваю Metadata
:
cluster = DseCluster.builder()
.addContactPoints("192.168.1.1", "192.168.1.2", "192.168.1.3")
.withPort(9042)
.withReconnectionPolicy(new ConstantReconnectionPolicy(2000))
.build();
cluster.getMetadata().getAllHosts();
РЕДАКТИРОВАТЬ: Обновлен код, чтобы отразить, что я пытаюсь подключиться к 3 хостам.Я должен был сказать, что кластер, к которому я подключаюсь, имеет 3 узла, 2 в DC1 и еще один в DC2.
Кроме того, всякий раз, когда я перезапускаю свой Java-процесс, выполняющий этот код, поведение меняется.Иногда он дает мне правильные состояния, затем, когда я снова запускаю его, он дает мне неправильные состояния и т. Д.