NoNodeAvailableException: ни один узел не был доступен для выполнения запроса - PullRequest
0 голосов
/ 08 октября 2019

Я не использую Elasticssearch. Я пытаюсь выполнить некоторые операции с базой данных в Кассандре с использованием CQL. Я использую темы. Во время выполнения кода я всегда получаю исключение в потоке через некоторое время: com.datastax.oss.driver.api.core.NoNodeAvailableException: ни один узел не был доступен для выполнения запроса.

Я тестировал даже с одной нитью. Ошибка все еще там. Вот мой код:

InetAddress addrOne = InetAddress.getByName("52.15.195.41");
InetSocketAddress addrSocOne = new InetSocketAddress(addrOne,9042);
CqlSession sessionOne = CqlSession.builder().addContactPoint(addrSocOne).withLocalDatacenter("us-east-2").withKeyspace("test").build();

while(counter <= 100)
{
    String query = "select max(id) FROM samplequeue";
    ResultSet rs = session.execute(query);
    for (Row row : rs) 
    {
        int exS = row.getInt("system.max(id)");
    }
    counter++;
    Thread.sleep(50);
}

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

1 Ответ

0 голосов
/ 28 октября 2019

Измените .withLocalDatacenter("us-east-2") на .withLocalDatacenter("datacenter1") и повторите попытку.

...