[ https://issues.apache.org/jira/browse/CASSANDRA-954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12853431#action_12853431 ]
Aaron Lav commented on CASSANDRA-954: ------------------------------------- Actually I've realized that the grep hit in fields-3355-Index.db isn't on the key, so I'm not sure how to figure out which file has the problematic data. > Exception "java.io.UTFDataFormatException: malformed input around byte 55" > retrieving single column (but not slices) > -------------------------------------------------------------------------------------------------------------------- > > Key: CASSANDRA-954 > URL: https://issues.apache.org/jira/browse/CASSANDRA-954 > Project: Cassandra > Issue Type: Bug > Components: Core > Affects Versions: 0.6 > Environment: Ubuntu Jaunty on EC2 m1.large instance > Reporter: Aaron Lav > > Using cassandra-cli, I get an exception on "get > PostingData.fields['146558416']['json']", but "get > PostingData.fields['146558416']" works fine and returns the expected data (a > single column named 'json'). The exception happens on both nodes of a > two-node cluster with RF set to 2. > This cluster was originally set up as a test and the problem data written > with 0.5b2, so if there was a known bug in that release with these symptoms, > please point me to it and close this. I didn't notice it until after > upgrading to 0.6rc1, but that could be coincidence. > grepping for 146558416 fields*-Index.db yields three posssible files, and > only one seems to be late enough for the column timestamp: fields-3355-*.db. > That was created by a compaction (under 0.5b2), according to the log: INFO > [COMPACTION-POOL:1] 2010-03-29 04:08:19,652 ColumnFamilyStore.java (line 944) > Compacted to /mnt2/cassandra/data/PostingData/fields-3355-Data.db. > 17698781375/14295733792 bytes for 4048148 keys. Time: 943763ms. > I've changed my code to retrieve slices instead of specifying the column, > which is an adequate workaround. > Here's the full traceback: > ERROR [pool-1-thread-29] 2010-04-05 15:43:17,450 Cassandra.java (line 1197) > Internal error processing get > java.lang.RuntimeException: java.util.concurrent.ExecutionException: > java.io.UTFDataFormatException: malformed input around byte 55 > at > org.apache.cassandra.service.StorageProxy.weakReadLocal(StorageProxy.java:542) > at > org.apache.cassandra.service.StorageProxy.readProtocol(StorageProxy.java:406) > at > org.apache.cassandra.thrift.CassandraServer.readColumnFamily(CassandraServer.java:101) > at > org.apache.cassandra.thrift.CassandraServer.multigetInternal(CassandraServer.java:309) > at > org.apache.cassandra.thrift.CassandraServer.get(CassandraServer.java:274) > at > org.apache.cassandra.thrift.Cassandra$Processor$get.process(Cassandra.java:1187) > at > org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:1125) > at > org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:253) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) > at java.lang.Thread.run(Thread.java:636) > Caused by: java.util.concurrent.ExecutionException: > java.io.UTFDataFormatException: malformed input around byte 55 > at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252) > at java.util.concurrent.FutureTask.get(FutureTask.java:111) > at > org.apache.cassandra.service.StorageProxy.weakReadLocal(StorageProxy.java:538) > ... 10 more > Caused by: java.io.UTFDataFormatException: malformed input around byte 55 > at java.io.DataInputStream.readUTF(DataInputStream.java:656) > at > org.apache.cassandra.io.util.MappedFileDataInput.readUTF(MappedFileDataInput.java:431) > at > org.apache.cassandra.db.filter.SSTableNamesIterator.<init>(SSTableNamesIterator.java:55) > at > org.apache.cassandra.db.filter.NamesQueryFilter.getSSTableColumnIterator(NamesQueryFilter.java:69) > at > org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:830) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:750) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:719) > at org.apache.cassandra.db.Table.getRow(Table.java:381) > at > org.apache.cassandra.db.SliceByNamesReadCommand.getRow(SliceByNamesReadCommand.java:56) > at > org.apache.cassandra.service.StorageProxy$weakReadLocalCallable.call(StorageProxy.java:763) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) > at java.util.concurrent.FutureTask.run(FutureTask.java:166) > ... 3 more > I'm often around on #cassandra as asl2, if anyone wants more info. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.