Alex Liu created CASSANDRA-4378: ----------------------------------- Summary: MalformedInputException running cleanup on solr KS 'Logging', we should catch the exception Key: CASSANDRA-4378 URL: https://issues.apache.org/jira/browse/CASSANDRA-4378 Project: Cassandra Issue Type: Bug Affects Versions: 1.1.0, 1.0.10, 1.0.9, 1.0.8 Reporter: Alex Liu Fix For: 1.1.2
The following occurred on 10 node cluster which we were running rebalance. Nick said it appeared to be related to running cleanup on a solr secondary index cf, and with this cluster it occurs when running cleanup on the Logging KS. Please note that we did run the solr_logging demo on this data prior to cleanup. The exception java.nio.charset.MalformedInputException: Input length = 1 is caused by incompatible data format. It comes from doCleanupCompaction method of CompactionManager.java from C* try { cfs.indexManager.deleteFromIndexes(row.getKey(), indexedColumnsInRow); } finally { Table.switchLock.readLock().unlock(); } it looks like something wrong with the key data in row.getKey() ERROR [CompactionExecutor:7] 2012-04-05 03:13:11,550 AbstractCassandraDaemon.java (line 139) Fatal exception in thread Thread[CompactionExecutor:7,1,main] java.lang.RuntimeException: java.nio.charset.MalformedInputException: Input length = 1 at com.datastax.bdp.cassandra.index.solr.SolrSecondaryIndex.deleteFromIndex(SolrSecondaryIndex.java:412) at org.apache.cassandra.db.index.SecondaryIndexManager.deleteFromIndexes(SecondaryIndexManager.java:488) at org.apache.cassandra.db.compaction.CompactionManager.doCleanupCompaction(CompactionManager.java:759) at org.apache.cassandra.db.compaction.CompactionManager.access$300(CompactionManager.java:64) at org.apache.cassandra.db.compaction.CompactionManager$5.perform(CompactionManager.java:242) at org.apache.cassandra.db.compaction.CompactionManager$2.call(CompactionManager.java:183) 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:662) Caused by: java.nio.charset.MalformedInputException: Input length = 1 at java.nio.charset.CoderResult.throwException(CoderResult.java:260) at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:781) at org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:164) at org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:121) at com.datastax.bdp.cassandra.index.solr.SolrSecondaryIndex.deleteFromIndex(SolrSecondaryIndex.java:405) ... 10 more Can we catch the exception here, so the program can continue running. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira