Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-11932

Range tombstones generated instead of regular ones between 2.1 and 3.0 nodes (in 3.0 -> 2.1 direction) for some tables

    XMLWordPrintableJSON

Details

    • 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

          Activity

            People

              thobbs Tom Hobbs
              aleksey Aleksey Yeschenko
              Tom Hobbs
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated: