You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2009/05/08 00:04:45 UTC

[jira] Updated: (CASSANDRA-153) get_key_range timeout and exception

     [ https://issues.apache.org/jira/browse/CASSANDRA-153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-153:
-------------------------------------

    Attachment: 153.patch

try it with this patch.  if that doesn't work, rm -r /var/cassandra/* to reset things and try again; it's possible that you have corrupt data from a bug that is fixed now.

> get_key_range timeout and exception
> -----------------------------------
>
>                 Key: CASSANDRA-153
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-153
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: nk11
>         Attachments: 153.patch
>
>
> My test code:
> 		int max = 5000;		
> 		for (int a = 0; a < max; a++) {
> 			System.out.println(a);
> 			client.insert("Table1", "k1:" + a, "Super1:x:x", new byte[] { (byte) 1 }, 0, false);
> 		}		
> 		client.get_key_range("Table1", "k1:0", "k1:1000", 1000);
> Produces in the logs:
> ERROR [ROW-READ-STAGE:9] 2009-05-07 23:04:56,609 CassandraDaemon.java (line 61) Fatal exception in thread Thread[ROW-READ-STAGE:9,5,main]
> java.lang.RuntimeException: corrupt sstable
> 	at org.apache.cassandra.db.FileStruct.seekTo(FileStruct.java:107)
> 	at org.apache.cassandra.db.Table.getKeyRange(Table.java:905)
> 	at org.apache.cassandra.service.RangeVerbHandler.doVerb(RangeVerbHandler.java:23)
> 	at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:46)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> 	at java.lang.Thread.run(Unknown Source)
> Caused by: java.io.EOFException
> 	at java.io.RandomAccessFile.readUnsignedShort(Unknown Source)
> 	at java.io.DataInputStream.readUTF(Unknown Source)
> 	at java.io.RandomAccessFile.readUTF(Unknown Source)
> 	at org.apache.cassandra.io.SequenceFile$AbstractReader.getPositionFromBlockIndex(SequenceFile.java:562)
> 	at org.apache.cassandra.db.FileStruct.seekTo(FileStruct.java:86)
> 	... 6 more
> ERROR [pool-1-thread-2] 2009-05-07 23:05:01,593 Cassandra.java (line 1187) Internal error processing get_key_range
> java.lang.RuntimeException: error reading keyrange RangeCommand(table='Table1', startWith='k1:0', stopAt='k1:1000', maxResults=1000)
> 	at org.apache.cassandra.service.StorageProxy.getKeyRange(StorageProxy.java:682)
> 	at org.apache.cassandra.service.CassandraServer.get_key_range(CassandraServer.java:511)
> 	at org.apache.cassandra.service.Cassandra$Processor$get_key_range.process(Cassandra.java:1183)
> 	at org.apache.cassandra.service.Cassandra$Processor.process(Cassandra.java:805)
> 	at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:252)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> 	at java.lang.Thread.run(Unknown Source)
> Caused by: java.util.concurrent.TimeoutException: Operation timed out.
> 	at org.apache.cassandra.net.AsyncResult.get(AsyncResult.java:95)
> 	at org.apache.cassandra.service.StorageProxy.getKeyRange(StorageProxy.java:677)
> 	... 7 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.