cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Morton <aa...@thelastpickle.com>
Subject Re: Getting Exception when doing a range query using token (worked in 6.5 not in 6.6)
Date Tue, 16 Nov 2010 02:17:35 GMT
In this case you could try subtracting 1 from the right hand side token. 

AFAIK the recommended approach to reading all rows in a CF is to use keys on the KeyRange
see http://wiki.apache.org/cassandra/FAQ#iter_world

Tokens are more of an internal feature there to support the Hadoop integration http://wiki.apache.org/cassandra/HadoopSupport .

If you want to iterate over all keys in a CF try either using the approach linked above, or
try Hadoop. 

Hope that helps. 
Aaron
 

On 16 Nov, 2010,at 03:01 PM, Anand Somani <meatforums@gmail.com> wrote:

I only have 1 node (not a cluster), so not sure what another machine it is trying to send
to? This is a very basic test that I am doing, hence only 1 node.

I use describe_ring to get a list of TokenRanges (1 in this case) and use the end_token and
start_token from it to get_range_slices. So what should I be doing instead?

On Mon, Nov 15, 2010 at 5:34 PM, Jonathan Ellis <jbellis@gmail.com> wrote:
TimedOutException means the host that your client is talking to sent
the request to another machine, which threw the logged exception and
thus did not reply.

You're doing an illegal query; token-based queries have to be on
non-wrapping ranges (left token < right token), or a wrapping range of
(mintoken, mintoken).  This was changed as part of the range scan
fixes post-0.6.5.


On Mon, Nov 15, 2010 at 6:32 PM, Anand Somani <meatforums@gmail.com> wrote:
> Hi
>
> Problem:
>      Call - client.get_range_slices(). Using tokens (not keys), fails with
> TimedoutException which I think is misleading (Read on)
>      Server : Works with 6.5 server, but not with 6.6 or 6.8
>      Client: have tried both 6.5 and 66
>
> I am getting a TimedoutException when I do a get_range_slices() passing in
> tokens (not keys). I only have 1 node at this time. This is working with
> 6.5, but is broken in 6.6 and 6.8. Basically I see the exception below on
> the server side, so not sure how it translates to TimedoutException. I tried
> to play with setting the timeout, but keep getting the TimedOutException in
> exactly 10 seconds, the set value seems to have no impact.
>
> The exception on the server side:
>
> ERROR [ROW-READ-STAGE:4] 2010-11-15 22:55:39,261 CassandraDaemon.java (line
> 87) Uncaught exception in thread Thread[ROW-READ-STAGE:4,5,main]
> java.lang.AssertionError:
> (99318701746171979556028978387039718369,99318701746171979556028978387039718369]
>     at
> org.apache.cassandradb.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1154)
>     at
> org.apache.cassandra.service.RangeSliceVerbHandler.doVerb(RangeSliceVerbHandler.java:41)
>     at
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:49)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>     at java.lang.Thread.run(Thread.java:619)
>
>
> I am doing something wrong or what?
>
> Thanks
> Anand
>



--
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support
http://riptano.com


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
    • Unnamed multipart/related (inline, None, 0 bytes)
View raw message