Skip to content

HBASE-30267 Backport HBASE-30266 Do not drop visibility delete marker…#8448

Open
liuxiaocs7 wants to merge 1 commit into
apache:branch-2from
liuxiaocs7:HBASE-30267-v1
Open

HBASE-30267 Backport HBASE-30266 Do not drop visibility delete marker…#8448
liuxiaocs7 wants to merge 1 commit into
apache:branch-2from
liuxiaocs7:HBASE-30267-v1

Conversation

@liuxiaocs7

Copy link
Copy Markdown
Member

…s as redundant during minor compaction to branch-2

…s as redundant during minor compaction to branch-2
@liuxiaocs7 liuxiaocs7 added the backport This PR is a back port of some issue or issues already committed to master label Jul 2, 2026
@liuxiaocs7 liuxiaocs7 requested a review from Copilot July 2, 2026 02:47

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR backports the HBASE-30266 fix to branch-2 to ensure that, on cell-visibility tables, delete markers are not incorrectly treated as redundant during minor compaction (which could otherwise resurrect data that must remain deleted).

Changes:

  • Override VisibilityScanDeleteTracker#isRedundantDelete to conservatively return false for all delete markers on visibility tables.
  • Add a focused unit test to pin the “never redundant” contract for visibility delete tracking.
  • Add an end-to-end regression test that exercises minor-compaction behavior to ensure differently-labeled delete markers are retained.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
hbase-server/src/main/java/org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.java Forces isRedundantDelete to always return false to prevent label-blind redundancy pruning during minor compaction.
hbase-server/src/test/java/org/apache/hadoop/hbase/security/visibility/TestVisibilityScanDeleteTracker.java Adds unit coverage asserting visibility delete markers are never reported redundant (including same-label and label-less cases).
hbase-server/src/test/java/org/apache/hadoop/hbase/security/visibility/TestVisibilityLabelsWithDeletes.java Adds an end-to-end regression test ensuring differently-labeled delete markers survive minor compaction and prevent data resurrection.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This 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.

2 participants