J'essaie de vous connecter à Cassandra local à l'aide de AsTyanax, mais d'obtenir constamment la piscineTimeException. Je suis capable de se connecter à Cassandra à l'aide du client CLI ou Hector. Toute idée que je fais mal?
Merci. P>
My Code: P>
Exception in thread "main" java.lang.RuntimeException: com.netflix.astyanax.connectionpool.exceptions.PoolTimeoutException: PoolTimeoutException: [host=127.0.0.1(127.0.0.1):9160, latency=10004(10004), attempts=1] Timed out waiting for connection at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$7.getNextBlock(ThriftColumnFamilyQueryImpl.java:652) at com.netflix.astyanax.thrift.ThriftAllRowsImpl$1.hasNext(ThriftAllRowsImpl.java:61) at scala.collection.JavaConversions$JIteratorWrapper.hasNext(JavaConversions.scala:574) at scala.collection.Iterator$class.foreach(Iterator.scala:772) at scala.collection.JavaConversions$JIteratorWrapper.foreach(JavaConversions.scala:573) at scala.collection.IterableLike$class.foreach(IterableLike.scala:73) at scala.collection.JavaConversions$JIterableWrapper.foreach(JavaConversions.scala:587) at at scala.Function0$class.apply$mcV$sp(Function0.scala:34) at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12) at scala.App$$anonfun$main$1.apply(App.scala:60) at scala.App$$anonfun$main$1.apply(App.scala:60) at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59) at scala.collection.immutable.List.foreach(List.scala:76) at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:30) at scala.App$class.main(App.scala:60) at Caused by: com.netflix.astyanax.connectionpool.exceptions.PoolTimeoutException: PoolTimeoutException: [host=127.0.0.1(127.0.0.1):9160, latency=10004(10004), attempts=1] Timed out waiting for connection at com.netflix.astyanax.connectionpool.impl.SimpleHostConnectionPool.waitForConnection(SimpleHostConnectionPool.java:201) at com.netflix.astyanax.connectionpool.impl.SimpleHostConnectionPool.borrowConnection(SimpleHostConnectionPool.java:158) at com.netflix.astyanax.connectionpool.impl.RoundRobinExecuteWithFailover.borrowConnection(RoundRobinExecuteWithFailover.java:60) at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:50) at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:229) at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$7.getNextBlock(ThriftColumnFamilyQueryImpl.java:623)
5 Réponses :
Nous avions aussi ce problème. Pour nous, il s'est avéré être un problème de version avec Libthrift. Version 0.7.0 travaillée. La version 0.6.1 n'a pas fait. Vérifiez votre parcours de classe et voir ... bonne chance. P>
-TD p>
"Tom D" Nice Catch, merci! Toute personne qui met à niveau AsTyanax Jar à V1.0.6 sans Maven, n'oubliez pas de mettre à niveau Libthrift à 0.7.0
Un autre problème est que si vous claquez des données sur un nœud et que vous avez une connexion de 50 et une seule connexion par hôte, vous obtiendrez la même chose pour que vous puissiez également équilibrer le nombre de threads / hôte dans certaines situations. p>
essayer de se connecter via le mauvais port donnera également cette erreur. Voir Cette discussion. P>
Vous devez installer Apache Thrift , pour moi, cela fonctionne d'installation de ces applications: P>
codage heureux :) p>
Passez ce qui suit dans le Cassandra.YAML P>
rpc_address code> li>
- Vérifiez le
rpc_port code> li>
- SET
START_RPC CODE> TO TRUE CODE> LI>
ol>