[ 
https://issues.apache.org/jira/browse/CASSANDRA-954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12853570#action_12853570
 ] 

Jonathan Ellis commented on CASSANDRA-954:
------------------------------------------

Well, that's definitely not supposed to happen.  Are you sure both were already 
running 0.6 before the restart?

> 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.

Reply via email to