Skip to content

HBASE-29989 Update the implementation of splitting in the documentation#7911

Open
liuxiaocs7 wants to merge 2 commits intoapache:masterfrom
liuxiaocs7:HBASE-29989
Open

HBASE-29989 Update the implementation of splitting in the documentation#7911
liuxiaocs7 wants to merge 2 commits intoapache:masterfrom
liuxiaocs7:HBASE-29989

Conversation

@liuxiaocs7
Copy link
Contributor

Copy link

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

Updates the RegionServer splitting documentation to clarify the HDFS directory layout used by newer region split implementations (referencing HBASE-26187), in the context of HBASE-29989.

Changes:

  • Adds an informational callout noting that newer split implementations no longer use a parent-region .splits directory.
  • Clarifies that the high-level split semantics remain the same, while the HDFS preparation location differs.

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

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +434 to +437
The numbered split procedure above contains legacy wording that mentions a `.splits` sub-directory under the parent region directory.
In newer implementations, [HBASE-26187](https://issues.apache.org/jira/browse/HBASE-26187) changed this behavior:
daughter region directories are created directly under the table directory, rather than under a parent-region `.splits` directory.
This update does not change the high-level split semantics (references, meta updates, and online transition of daughters), but it changes where temporary/initial daughter files are prepared in HDFS.
Copy link

Copilot AI Mar 12, 2026

Choose a reason for hiding this comment

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

This note says the numbered split procedure above contains legacy wording about a .splits directory, but the procedure itself still describes creating/using .splits (steps 3/5). To avoid readers following an inaccurate step-by-step flow, consider updating the numbered steps to match the post-HBASE-26187 behavior, or explicitly scoping the numbered procedure to the older implementation and stating which HBase versions/releases the new behavior applies to.

Suggested change
The numbered split procedure above contains legacy wording that mentions a `.splits` sub-directory under the parent region directory.
In newer implementations, [HBASE-26187](https://issues.apache.org/jira/browse/HBASE-26187) changed this behavior:
daughter region directories are created directly under the table directory, rather than under a parent-region `.splits` directory.
This update does not change the high-level split semantics (references, meta updates, and online transition of daughters), but it changes where temporary/initial daughter files are prepared in HDFS.
The numbered split procedure above documents the original, pre-HBASE-26187 implementation, in which daughter regions are first created under a `.splits` sub-directory of the parent region directory.
In newer HBase implementations that include [HBASE-26187](https://issues.apache.org/jira/browse/HBASE-26187), this on-disk layout has changed:
daughter region directories are created directly under the table directory, rather than under a parent-region `.splits` directory.
When reading the numbered procedure for such newer versions, interpret any steps that mention creating or using a `.splits` directory as instead preparing and promoting daughter region files directly under the table directory.
This update does not change the high-level split semantics (references, meta updates, and online transition of daughters); it only affects where temporary/initial daughter files are prepared in HDFS.

Copilot uses AI. Check for mistakes.
<Callout type="info" title="Behavior change in newer split implementation">
The numbered split procedure above contains legacy wording that mentions a `.splits` sub-directory under the parent region directory.
In newer implementations, [HBASE-26187](https://issues.apache.org/jira/browse/HBASE-26187) changed this behavior:
daughter region directories are created directly under the table directory, rather than under a parent-region `.splits` directory.
Copy link

Copilot AI Mar 12, 2026

Choose a reason for hiding this comment

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

Minor wording/grammar: after the colon, start the next sentence with a capital letter ("Daughter region directories...") and consider avoiding the hyphenated "parent-region" phrasing ("parent region’s .splits directory" reads more naturally).

Suggested change
daughter region directories are created directly under the table directory, rather than under a parent-region `.splits` directory.
Daughter region directories are created directly under the table directory, rather than under a parent region's `.splits` directory.

Copilot uses AI. Check for mistakes.
vaijosh
vaijosh approved these changes Mar 12, 2026
Copy link
Contributor

@vaijosh vaijosh left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Contributor

@PDavid PDavid left a comment

Choose a reason for hiding this comment

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

Many thanks, looks good to me. 👍

@PDavid
Copy link
Contributor

PDavid commented Mar 12, 2026

Looking into the Yetus check it says this:

[INFO] > eslint . && prettier --check "**/*.{md,mdx}"
[INFO] 
[INFO] Checking formatting...
[INFO] [warn] app/pages/_docs/docs/_mdx/(multi-page)/architecture/regionserver.mdx
[INFO] [warn] Code style issues found in the above file. Run Prettier with --write to fix.

Can you please check this?

@liuxiaocs7
Copy link
Contributor Author

Looking into the Yetus check it says this:

[INFO] > eslint . && prettier --check "**/*.{md,mdx}"
[INFO] 
[INFO] Checking formatting...
[INFO] [warn] app/pages/_docs/docs/_mdx/(multi-page)/architecture/regionserver.mdx
[INFO] [warn] Code style issues found in the above file. Run Prettier with --write to fix.

Can you please check this?

Hi, @PDavid, thanks for pointing out this, I'll try to fix later!

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.

4 participants