Skip to content

Backport "HBASE-30036 Skip redundant delete markers during flush and minor compaction (#7993)" to branch-3 - #8033

Merged
junegunn merged 1 commit into
apache:branch-3from
junegunn:HBASE-30036-branch-3
Apr 8, 2026
Merged

Backport "HBASE-30036 Skip redundant delete markers during flush and minor compaction (#7993)" to branch-3#8033
junegunn merged 1 commit into
apache:branch-3from
junegunn:HBASE-30036-branch-3

Conversation

@junegunn

Copy link
Copy Markdown
Member

No description provided.

…action (apache#7993)
Add DeleteTracker.isRedundantDelete() to detect when a delete marker is
already covered by a previously tracked delete of equal or broader scope.
ScanDeleteTracker implements this for all four delete types:
- DeleteFamily/DeleteFamilyVersion: covered by a tracked DeleteFamily
- DeleteColumn/Delete: covered by a tracked DeleteFamily or DeleteColumn
MinorCompactionScanQueryMatcher calls this check before including a
delete marker, returning SEEK_NEXT_COL to skip past all remaining cells
covered by the previously tracked delete.
Compatible with KEEP_DELETED_CELLS. When set to TRUE, trackDelete() does
not populate the delete tracker, so isRedundantDelete() always returns
false and all markers are retained.
Signed-off-by: Charles Connell <cconnell@apache.org>
@junegunnjunegunn added the backport This PR is a back port of some issue or issues already committed to master label Apr 8, 2026
@junegunn
junegunn merged commit 7852997 into apache:branch-3Apr 8, 2026
16 of 18 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backportThis PR is a back port of some issue or issues already committed to master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@junegunn