Ran, I ran the nodeprobe tool , and got the correct ring infomation. Address Status Load Range Ring 85080781597816482766914734169501403890 192.168.13.40 Up 38.18 GB 26049930823101849079767692175708865961 |<--| 192.168.13.39 Up 38.18 GB 85080781597816482766914734169501403890 |-->|
Thanks! cheers, 2010-03-17 casablinca126.com 发件人: Ran Tavory 发送时间: 2010-03-17 11:31:41 收件人: user@cassandra.apache.org 抄送: 主题: Re: failover exception with hector I seems the host you were connected to was unable to locate the other host in the ring. That's probably a configuration error. Can you run nodeprobe -host1 ring where host1 is the host hector was connected to initially? If not that, can you check with jconsole how hector sees the ring: connect to the java client running hector and check me.prettyprint.hector if the list of known hosts is consistent with your setup? 2010/3/16 casablinca126.com <casabli...@126.com> hi folks, Just switched from C++ interface to hector, found an exception when testing with a 2-node cluster: Exception in thread "main" org.apache.thrift.TException: Unable to failover to next host at me.prettyprint.cassandra.service.KeyspaceImpl.skipToNextHost(KeyspaceImpl.java:598) at me.prettyprint.cassandra.service.KeyspaceImpl.operateWithFailover(KeyspaceImpl.java:668) at me.prettyprint.cassandra.service.KeyspaceImpl.insert(KeyspaceImpl.java:270) at me.prettyprint.cassandra.service.ExampleClient.insertFromDB(ExampleClient.java:108) at me.prettyprint.cassandra.service.ExampleClient.main(ExampleClient.java:45) I was doing a lot of insertion. Probably inserting to 1 node wsa failed, and hector failed to find the other node. I'm using cassandra-0.5.0. In conf/storage-conf.xml, the ListenAddress is configured as the IP and ThriftAddress is left blank. Any ideas? cheers, Cao Jiguang -------------- casablinca126.com 2010-03-17