I am using Cassandra 1.2.0(latest)
I have extended PerRowSecondaryIndex class to provide my own secondary index.
It works fine as long as Cassandra node is running but when it restarts and I query data from Cassandra it throws exception:
Caused by: java.lang.ClassCastException: java.nio.HeapByteBuffer cannot be cast to java.lang.Long
at org.apache.cassandra.dht.LongToken.compareTo(LongToken.java:31)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:85)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:1)
at org.apache.cassandra.utils.IntervalTree.comparePoints(IntervalTree.java:191)
at org.apache.cassandra.utils.IntervalTree.access$2(IntervalTree.java:181)
at org.apache.cassandra.utils.IntervalTree$IntervalNode.searchInternal(IntervalTree.java:293)
at org.apache.cassandra.utils.IntervalTree.search(IntervalTree.java:140)
at org.apache.cassandra.utils.IntervalTree.search(IntervalTree.java:146)
at org.apache.cassandra.db.ColumnFamilyStore.markReferenced(ColumnFamilyStore.java:1300)
at org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:228)
at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1362)
at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1222)
at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1134)
at org.apache.cassandra.db.index.keys.MyKeysSearcher.search(MyKeysSearcher.java:397)
at org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:560)
at org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1459)
at org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
at org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1072)
at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1506)
... 3 more
What might be the reason for this?
I have seen similar issue(CASSANDRA-4289) with previous releases but that is marked as fixed in this version. So is this Cassandra issue or am I doing something wrong here?
