You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jackson Chung (JIRA)" <ji...@apache.org> on 2013/10/25 11:05:30 UTC

[jira] [Created] (CASSANDRA-6241) Assertion on MmappedSegmentedFile.floor doesn't tell us the path (filename)

Jackson Chung created CASSANDRA-6241:
----------------------------------------

             Summary: Assertion on MmappedSegmentedFile.floor doesn't tell us the path (filename)
                 Key: CASSANDRA-6241
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6241
             Project: Cassandra
          Issue Type: Bug
            Reporter: Jackson Chung


for whatever reason (hardware failure, excess load, etc), we get this:
{panel}
ERROR [MutationStage:10] 2013-10-25 08:54:03,150 AbstractCassandraDaemon.java (line 132) Exception in thread Thread[MutationStage:10,5,main]
java.lang.AssertionError: 1711300 vs 974637
	at org.apache.cassandra.io.util.MmappedSegmentedFile.floor(MmappedSegmentedFile.java:62)
	at org.apache.cassandra.io.util.MmappedSegmentedFile.getSegment(MmappedSegmentedFile.java:77)
	at org.apache.cassandra.io.sstable.SSTableReader.getFileDataInput(SSTableReader.java:900)
	at org.apache.cassandra.db.columniterator.SSTableNamesIterator.<init>(SSTableNamesIterator.java:63)
	at org.apache.cassandra.db.filter.NamesQueryFilter.getSSTableColumnIterator(NamesQueryFilter.java:61)
	at org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:79)
	at org.apache.cassandra.db.CollationController.collectTimeOrderedData(CollationController.java:124)
	at org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:64)
	at org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1362)
	at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1224)
	at org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1154)
	at org.apache.cassandra.db.Table.readCurrentIndexedColumns(Table.java:514)
	at org.apache.cassandra.db.Table.apply(Table.java:452)
	at org.apache.cassandra.db.Table.apply(Table.java:384)
	at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:294)
	at org.apache.cassandra.db.RowMutationVerbHandler.doVerb(RowMutationVerbHandler.java:51)
	at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:662)
{panel}

But the assertion error doesn't tell us the SSTable that is having the problem. So it doesn't really help us. I think we can simply append the assert error log msg with the this.path to show the filename of the problematic file.

I would also suggest make "1711300 vs 974637" more clear...



--
This message was sent by Atlassian JIRA
(v6.1#6144)