Ariel Weisberg created CASSANDRA-18795:
------------------------------------------
Summary: Compaction purger doesn't handle seeing random slices of
state correctly
Key: CASSANDRA-18795
URL: https://issues.apache.org/jira/browse/CASSANDRA-18795
Project: Cassandra
Issue Type: Bug
Reporter: Ariel Weisberg
Assignee: Ariel Weisberg
Compaction purger was written assuming it will be compacting the latest state
of the command row, but this is far from the case and it will actually be
compacting a random slice of command row columns and their versions based on
whatever input sstables are selected for the compaction.
This is not very problematic to fix. A lot of the logic is based on just the
value of the field, and the remaining can wait until enough of the command is
visible to determine if cleanup is possible cleanup.
Eventually durability is `universal` and we can drop the row contents based on
just the `txnid` so there is always a fallback no matter how badly we have torn
up the state of a command by dropping portions. We don't want to rely on that
so we do drop a tombstone in the `erase` case which we can later drop when
durability is `universal` without any expensive tombstone handling checks.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]