Jeremiah Jordan created CASSANDRA-11489:
-------------------------------------------
Summary: 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
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. Looks like 3.0 isn't encoding
DynamicCompositeType writes correctly to the old nodes. 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)