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