You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "T Jake Luciani (JIRA)" <ji...@apache.org> on 2012/12/05 18:27:58 UTC

[jira] [Updated] (CASSANDRA-5030) IndexHelper.IndexFor call throws AOB exception when passing multiple slices

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

T Jake Luciani updated CASSANDRA-5030:
--------------------------------------

    Attachment: broken-index-helper-test.txt
    
> IndexHelper.IndexFor call throws AOB exception when passing multiple slices
> ---------------------------------------------------------------------------
>
>                 Key: CASSANDRA-5030
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5030
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.0 beta 3
>            Reporter: T Jake Luciani
>         Attachments: broken-index-helper-test.txt
>
>
> While testing multiple slices I'm seeing some exceptions when a slice hits the end of an index.
> {code}
> ERROR [ReadStage:138179] 2012-12-04 18:04:28,796 CassandraDaemon.java (line 132) Exception in thread Thread[ReadStage:138179,5,main]
> java.lang.IndexOutOfBoundsException: toIndex = 6
>         at java.util.SubList.<init>(AbstractList.java:602)
>         at java.util.RandomAccessSubList.<init>(AbstractList.java:758)
>         at java.util.AbstractList.subList(AbstractList.java:468)
>         at org.apache.cassandra.io.sstable.IndexHelper.indexFor(IndexHelper.java:182)
>         at org.apache.cassandra.db.columniterator.IndexedSliceReader$IndexedBlockFetcher.setNextSlice(IndexedSliceReader.java:253)
>         at org.apache.cassandra.db.columniterator.IndexedSliceReader$IndexedBlockFetcher.<init>(IndexedSliceReader.java:246)
>         at org.apache.cassandra.db.columniterator.IndexedSliceReader.<init>(IndexedSliceReader.java:91)
>         at org.apache.cassandra.db.columniterator.SSTableSliceIterator.createReader(SSTableSliceIterator.java:68)
>         at org.apache.cassandra.db.columniterator.SSTableSliceIterator.<init>(SSTableSliceIterator.java:44)
>         at org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:101)
>         at org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:68)
>         at org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:267)
>         at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:61)
>         at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1387)
>         at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1247)
>         at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1159)
>         at org.apache.cassandra.db.Table.getRow(Table.java:348)
>         at org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:70)
>         at org.apache.cassandra.db.ReadVerbHandler.doVerb(ReadVerbHandler.java:48)
>         at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:56)
>         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:662)
> {code}
> I can reproduce this in a test, attached

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira