[
https://issues.apache.org/jira/browse/CASSANDRA-11930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tyler Hobbs updated CASSANDRA-11930:
------------------------------------
Reviewer: Aleksey Yeschenko
Status: Patch Available (was: In Progress)
> Range tombstone serialisation between 2.1 and 3.0 nodes (in 3.0 -> 2.1
> direction) is broken for some Thrift deletions
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-11930
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11930
> Project: Cassandra
> Issue Type: Bug
> Components: Coordination
> Reporter: Aleksey Yeschenko
> Assignee: Tyler Hobbs
> Fix For: 3.0.x, 3.x
>
>
> {{LegacyLayout.LegacyRangeTombstoneList::serialize()}} has a broken
> assumption that a range tombstone implies {{CompositeType}}. This is
> incorrect, as you can have non-{{CompositeType}} range tombstones created via
> Thrift in 2.1, and as such wrapping {{clusteringComparator.subtypes()}} in a
> {{CompositeType}} is incorrect. On 2.1/2.2 side, when decoding the range
> tombstone list, {{RangeTombstoneList::deserialize()}} will use the raw type
> to decode start and end bounds, which will end up being confused by the extra
> 2 bytes in the beginning (short length) plus end of component header in the
> end.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)