Skip to content

AllRowsReader - Error process token/key range in 1.56.28 #232

Closed
philipgao opened this Issue Mar 9, 2013 · 1 comment

3 participants

@philipgao

I met the following issue using Astynax AllRowsReader(1.56.28) to read from Cassandra 1.2.
 I searched it, it seems to be an issue of Murmur3Partitioner support in Astynax, so I switched my cluster to RandomPartitioner, seems still has the same issue.

ERROR com.netflix.astyanax.recipes.reader.AllRowsReader  - Error process token/key range
com.netflix.astyanax.connectionpool.exceptions.BadRequestException: BadRequestException:InvalidRequestException(why:Start token sorts after end token)
at com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:159)
at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:61)
at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28)
at com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl.java:151)
at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:69)
at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:253)
at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$2.execute(ThriftColumnFamilyQueryImpl.java:394)
at com.netflix.astyanax.recipes.reader.AllRowsReader$1.call(AllRowsReader.java:357)
at com.netflix.astyanax.recipes.reader.AllRowsReader$1.call(AllRowsReader.java:329)
at com.netflix.astyanax.util.BarrierCallableDecorator.call(BarrierCallableDecorator.java:34)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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:680)
Caused by: InvalidRequestException(why:Start token sorts after end token)
at org.apache.cassandra.thrift.Cassandra$get_range_slices_result.read(Cassandra.java:12916)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
at org.apache.cassandra.thrift.Cassandra$Client.recv_get_range_slices(Cassandra.java:734)
at org.apache.cassandra.thrift.Cassandra$Client.get_range_slices(Cassandra.java:718)
at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$2$1.internalExecute(ThriftColumnFamilyQueryImpl.java:410)
at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$2$1.internalExecute(ThriftColumnFamilyQueryImpl.java:397)
at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:56)
... 13 more
ERROR com.netflix.astyanax.recipes.reader.AllRowsReader  - Error process token/key range
com.netflix.astyanax.connectionpool.exceptions.InterruptedOperationException: InterruptedOperationException: Thread interrupted waiting for connection
at com.netflix.astyanax.connectionpool.impl.SimpleHostConnectionPool.waitForConnection(SimpleHostConnectionPool.java:224)
at com.netflix.astyanax.connectionpool.impl.SimpleHostConnectionPool.borrowConnection(SimpleHostConnectionPool.java:185)
at com.netflix.astyanax.connectionpool.impl.RoundRobinExecuteWithFailover.borrowConnection(RoundRobinExecuteWithFailover.java:66)
at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:67)
at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:253)
at com.netflix.astyanax.thrift.ThriftColumnFamilyQueryImpl$2.execute(ThriftColumnFamilyQueryImpl.java:394)
at com.netflix.astyanax.recipes.reader.AllRowsReader$1.call(AllRowsReader.java:357)
at com.netflix.astyanax.recipes.reader.AllRowsReader$1.call(AllRowsReader.java:329)
at com.netflix.astyanax.util.BarrierCallableDecorator.call(BarrierCallableDecorator.java:34)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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:680)

@shyamalan shyamalan was assigned Mar 13, 2013
@shyamalan

we have verified that this works as expected in the latest, we have also added some unit tests in the astyanax-recipes/MiscUnitTests for the same.

@elandau elandau closed this Mar 27, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.