[
https://issues.apache.org/jira/browse/CASSANDRA-12168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15371439#comment-15371439
]
Anthony Cozzie commented on CASSANDRA-12168:
--------------------------------------------
It seems a) my analysis was incorrect because I missed that the C* code was
checking != vs = and b) this got fixed in 3.0.8 somewhere. Marking as 'cannot
reproduce'. At least we are on our way to 6 digit jira numbers . . .
> DCT deserialization code incorrect in 3.0
> -----------------------------------------
>
> Key: CASSANDRA-12168
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12168
> Project: Cassandra
> Issue Type: Bug
> Components: Streaming and Messaging
> Reporter: Anthony Cozzie
> Assignee: Anthony Cozzie
> Labels: easyfix
> Fix For: 3.0.x, 3.x
>
> Attachments: 0001-CASSANDRA-12168-fix-thrift-DCT-deserialization.patch
>
>
> With a C* 2.1 node querying a table with DCT columns from a 3.0 node we see
> the following exception:
> {code}
> java.lang.IllegalArgumentException: null
> at java.nio.Buffer.limit(Buffer.java:275) ~[na:1.8.0_66]
> at
> org.apache.cassandra.utils.ByteBufferUtil.readBytes(ByteBufferUtil.java:611)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.marshal.DynamicCompositeType.getComparator(DynamicCompositeType.java:97)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.marshal.DynamicCompositeType.getComparator(DynamicCompositeType.java:118)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.marshal.AbstractCompositeType.compareCustom(AbstractCompositeType.java:63)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.marshal.AbstractType.compare(AbstractType.java:157)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ClusteringComparator.compareComponent(ClusteringComparator.java:166)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ClusteringComparator.compare(ClusteringComparator.java:137)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at org.apache.cassandra.db.Slices$Builder.add(Slices.java:206)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.index.internal.keys.KeysSearcher.filterIfStale(KeysSearcher.java:193)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.index.internal.keys.KeysSearcher.access$400(KeysSearcher.java:38)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.index.internal.keys.KeysSearcher$1.prepareNext(KeysSearcher.java:107)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.index.internal.keys.KeysSearcher$1.hasNext(KeysSearcher.java:72)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:72)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$Serializer.serialize(UnfilteredPartitionIterators.java:295)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.build(ReadResponse.java:134)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:127)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:123)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadResponse.createDataResponse(ReadResponse.java:65)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadCommand.createResponse(ReadCommand.java:289)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.db.ReadCommandVerbHandler.doVerb(ReadCommandVerbHandler.java:47)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:67)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> ~[na:1.8.0_66]
> at
> org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164)
> ~[cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at
> org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136)
> [cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105)
> [cassandra-all-3.0.7.1159.jar:3.0.7.1159]
> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)