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

Tyler Hobbs commented on CASSANDRA-11489:
-----------------------------------------

No, unfortunately nothing obvious comes to mind.  The code for serializing 
range tombstones in the "legacy" format is fairly complex, so there's 
definitely a possibility that there's a bug there.  I would put a bunch of 
debug statements in {{LegacyLayout.fromUnfilteredRowIterator()}} to check what 
kinds of deletions are present in 3.0 and what the 3.0 node _thinks_ it's 
serializing.

> DynamicCompositeType failures during 2.1 to 3.0 upgrade.
> --------------------------------------------------------
>
>                 Key: CASSANDRA-11489
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11489
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jeremiah Jordan
>            Assignee: Aleksey Yeschenko
>             Fix For: 3.0.x, 3.x
>
>
> When upgrading from 2.1.13 to 3.0.4+some (hash 
> 70eab633f289eb1e4fbe47b3e17ff3203337f233) we are seeing the following 
> exceptions on 2.1 nodes after other nodes have been upgraded. With tables 
> using DynamicCompositeType in use.  The workload runs fine once everything is 
> upgraded.
> {code}
> ERROR [MessagingService-Incoming-/10.200.182.2] 2016-04-03 21:49:10,531  
> CassandraDaemon.java:229 - Exception in thread 
> Thread[MessagingService-Incoming-/10.200.182.2,5,main]
> java.lang.RuntimeException: java.nio.charset.MalformedInputException: Input 
> length = 1
>       at 
> org.apache.cassandra.db.marshal.DynamicCompositeType.getAndAppendComparator(DynamicCompositeType.java:181)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:200)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.cql3.ColumnIdentifier.<init>(ColumnIdentifier.java:54) 
> ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.composites.SimpleSparseCellNameType.fromByteBuffer(SimpleSparseCellNameType.java:83)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.composites.AbstractCType$Serializer.deserialize(AbstractCType.java:398)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.composites.AbstractCType$Serializer.deserialize(AbstractCType.java:382)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.RangeTombstoneList$Serializer.deserialize(RangeTombstoneList.java:843)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.DeletionInfo$Serializer.deserialize(DeletionInfo.java:407)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.ColumnFamilySerializer.deserialize(ColumnFamilySerializer.java:105)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.ColumnFamilySerializer.deserialize(ColumnFamilySerializer.java:89)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at org.apache.cassandra.db.Row$RowSerializer.deserialize(Row.java:73) 
> ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.ReadResponseSerializer.deserialize(ReadResponse.java:116)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.ReadResponseSerializer.deserialize(ReadResponse.java:88)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at org.apache.cassandra.net.MessageIn.read(MessageIn.java:99) 
> ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:195)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.receiveMessages(IncomingTcpConnection.java:172)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:88)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
> Caused by: java.nio.charset.MalformedInputException: Input length = 1
>       at java.nio.charset.CoderResult.throwException(CoderResult.java:281) 
> ~[na:1.8.0_40]
>       at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:816) 
> ~[na:1.8.0_40]
>       at 
> org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:152) 
> ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:109) 
> ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       at 
> org.apache.cassandra.db.marshal.DynamicCompositeType.getAndAppendComparator(DynamicCompositeType.java:169)
>  ~[cassandra-all-2.1.13.1131.jar:2.1.13.1131]
>       ... 16 common frames omitted
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to