Skip to content

HBASE-30192 ColumnFamilyDescriptor.getConfigurationValue should also read the values map#8295

Open
junegunn wants to merge 1 commit into
apache:masterfrom
junegunn:HBASE-30192
Open

HBASE-30192 ColumnFamilyDescriptor.getConfigurationValue should also read the values map#8295
junegunn wants to merge 1 commit into
apache:masterfrom
junegunn:HBASE-30192

Conversation

@junegunn
Copy link
Copy Markdown
Member

@junegunn junegunn commented Jun 1, 2026

Since shell writes CF CONFIGURATION to values map (HBASE-20819), getConfigurationValue should access it before checking the legacy configuration map.

Note: changes behavior of a public method.

…read the values map

Since shell writes CF CONFIGURATION to values map (HBASE-20819),
getConfigurationValue should access it before checking
the legacy configuration map.

Note: changes behavior of a public method.
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Fixes HBASE-30192 so that ColumnFamilyDescriptor.getConfigurationValue also consults the values map, since the HBase shell writes CF CONFIGURATION entries there (HBASE-20819). Previously, settings made via the shell were invisible to code paths that read via getConfigurationValue, causing, e.g., the FIFO compaction sanity check to miss shell-configured policies.

Changes:

  • getConfigurationValue now returns the value from the values map first, falling back to the legacy configuration map.
  • Javadoc on the interface updated to describe the new lookup order.
  • Added unit tests for the fallback behavior and an end-to-end sanity-check test exercising both setValue and setConfiguration paths for FIFO compaction.

Reviewed changes

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

File Description
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.java Updated Javadoc to reflect new lookup precedence.
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ColumnFamilyDescriptorBuilder.java Implementation: check values map before configuration map.
hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestColumnFamilyDescriptorBuilder.java Unit tests verifying fallback and precedence.
hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestTableDescriptorChecker.java Sanity-check test covering FIFO policy via both setValue and setConfiguration.

💡 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

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants