2016-02-07 1 views
2

Я пытаюсь подключить Cassandra к Java в среде Windows. Ниже приведены версия приложения/ОС/lib.error on /127.0.0.1 connection (com.datastax.driver.core.TransportException: [/127.0.0.1] Неиспользуемое исключение вызвано), больше нет хоста, чтобы попробовать

-Windows 7 
-Java 7 
-Cassandra 2.1.12 

Код:

Cluster clst; 
Session ses; 
clst= Cluster.builder().addContactPoint("127.0.0.1").withPort(9042).build(); 

Cassandra и nodetool работает. Ниже приведен статус nodetool.

C:\Program Files\DataStax Community\apache-cassandra\bin>nodetool -h localhost status 
Starting NodeTool 
Datacenter: datacenter1 
======================== 
Status=Up/Down 
|/ State=Normal/Leaving/Joining/Moving 
-- Address Load  Tokens Owns Host ID        Rack 
UN 127.0.0.1 245.99 KB 256  ?  61c6b0e5-2f83-4bc9-9b86-6507e2f06dfc rack1 

Note: Non-system keyspaces don't have the same replication settings, effective ownership information is meaningless 
C:\Program Files\DataStax Community\apache-cassandra\bin> 

Когда я пытаюсь соединить Кассандру с локального хоста/127.0.01 я и получаю ниже ошибки в StackTrace.

19:19:05.996 [main] DEBUG c.d.driver.core.ControlConnection - [Control connection] Refreshing node list and token map 
19:19:06.465 [main] DEBUG c.d.driver.core.ControlConnection - [Control connection] error on /127.0.0.1 connection (com.datastax.driver.core.TransportException: [/127.0.0.1] Unexpected exception triggered), no more host to try 
19:19:06.469 [main] DEBUG com.datastax.driver.core.Cluster - Shutting down 
Exception in thread "main" com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: [/127.0.0.1]) 
    at com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:162) 
    at com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:83) 
    at com.datastax.driver.core.Cluster$Manager.<init>(Cluster.java:516) 
    at com.datastax.driver.core.Cluster$Manager.<init>(Cluster.java:473) 
    at com.datastax.driver.core.Cluster.<init>(Cluster.java:65) 
    at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:93) 
    at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:458) 
    at cass.Cass.main(Cass.java:16) 
Java Result: 1 

Также я попытался найти решение на stackoverflow также на других сайтах, но мне не удалось решить мою проблему.

У кого-нибудь есть какое-то решение по этому запросу?

+0

Правильный номер порта '9042'? –

+0

А какая версия драйвера Java datastax вы используете? –

+0

И убедитесь, что 'start_native_transport: true' установлен в cassandra.yaml – DBug

ответ

0

Пожалуйста, проверьте свой rpc_address. Я предлагаю ставить rpc_address = 0.0.0.0 и broadcast_rpc_address = Слушайте адрес может быть пустым или машина IP

+0

все еще не работает .. такой же выпуск. Я пробовал как на win, так и на Linux, получая ту же самую проблему. –

+0

cluster = Cluster.builder(). AddContactPoint (IP-адрес) .withPort (9042) .build(); Использовать IP-адрес вместо 127.0.0.1 –

+0

все еще не работает –

0

С вашей трассировки стека, я подозреваю, что вы используете очень старую версию драйвера Java, вероятно, некоторые версии из 1.x (1.0.1?). Попробуйте использовать последнюю версию 3.0.0 и посмотрите, все еще есть ошибка.

+0

вы можете поделиться мне ссылкой, где я могу скачать последний драйвер? –

+0

Вы можете скачать все версии с http://downloads.datastax.com/java-driver. – adutra

0

Я нашел проблему, я запускал код из проекта, используя множество сторонних библиотек, и один из них вызывает ошибку (я еще не знаю, какой из них). Я заменил все файлы jar и проблема решена. Перейдите по следующему URL-адресу и загрузите файлы jar-файлов Java в соответствии с используемой вами версией cassandra. http://docs.datastax.com/en/developer/driver-matrix/doc/javaDrivers.html#java-drivers

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