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

Range tombstones not accounted in tracing/cfstats

    Details

      Description

      I noticed an inconsistent behavior on deletes. Not sure if it is intentional.

      The summary is:

      If a table is created with TTL or if rows are inserted in a table using TTL, when its time to expire the row, tombstone is generated (as expected) and cfstats, cqlsh tracing and sstable2json show it.

      However, if one executes a delete from table query followed by a select *, neither cql tracing nor cfstats shows a tombstone being present. However, sstable2json shows a tombstone.

      Is this situation treated differently on purpose ? In such a situation, does Cassandra not have to scan tombstones (seems odd) ?

      Also as a data point, if one executes a delete <some-column> from table, cqlsh tracing, nodetool cfstats, and sstable2json all show a consistent result (tombstone being present).

      As a end user, I'd assume that deleting a row either via TTL or explicitly should show me a tombstone. Is this expectation reasonable ? If not, can this behavior be clearly documented ?

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                anubhavk Anubhav Kale
              • Votes:
                1 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: