Details
-
Bug
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
None
-
Normal
Description
Mixed and dynamic Thrift CFs deletions of the dynamic component are being translated into range tombstones in 3.0 -> 2.1 direction. On 3.0 side they are whole row deletions, and LegacyLayout::fromRow(CFMetaData, Row) turns them into range tombstones even for non-composite, dynamic and mixed Thrift CFs. They should be converted into single-cell deletions instead.
This is not a correctness problem, strictly speaking, and on its own 'only' causes digest mismatches on reads (and thus a lot of extra traffic w/ CL > ONE) and less efficient representation on wire, though breaks some upgrades in combination with CASSANDRA-11930.
To reproduce, create a mixed CF while both nodes are on 2.1, upgrade one node to 3.0, and with cqlsh connected to 3.0 remove some rows. Then do a SELECT * query in cqlsh when connected to 2.1.
Attachments
Issue Links
- is part of
-
CASSANDRA-11489 DynamicCompositeType failures during 2.1 to 3.0 upgrade.
- Resolved