You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by "casablinca126.com" <ca...@126.com> on 2010/03/17 03:54:56 UTC

failover exception with hector

 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



Re: Re: failover exception with hector

Posted by Ran Tavory <ra...@gmail.com>.
let's continue this offline. user@ to bcc

Would be helpful if:

- You cancheck 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?
- Send all recent log lines so I have better understanding why this i
happening.


2010/3/17 casablinca126.com <ca...@126.com>

>  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 <ca...@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
>>
>>
>>
>

Re: Re: failover exception with hector

Posted by "casablinca126.com" <ca...@126.com>.
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 <ca...@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

Re: failover exception with hector

Posted by Ran Tavory <ra...@gmail.com>.
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 <ca...@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
>
>
>