Skip to content

Commit 376a41c

Browse files
committed
HBASE-29989 Update the implementation of splitting in the documentation
1 parent d610044 commit 376a41c

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

hbase-website/app/pages/_docs/docs/_mdx/(multi-page)/architecture/regionserver.mdx

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,21 @@ Although splitting the region is a local decision made by the RegionServer, the
428428
10. The RegionServer updates znode `/hbase/region-in-transition/region-name` in ZooKeeper to state `SPLIT`, so that the master can learn about it. The balancer can freely re-assign the daughter regions to other region servers if necessary. **THE SPLIT TRANSACTION IS NOW FINISHED.**
429429
11. After the split, `.META.` and HDFS will still contain references to the parent region. Those references will be removed when compactions in daughter regions rewrite the data files. Garbage collection tasks in the master periodically check whether the daughter regions still refer to the parent region's files. If not, the parent region will be removed.
430430

431+
### Note on split directory behavior (HBASE-26187)
432+
433+
<Callout type="info" title="Behavior change in newer split implementation">
434+
The numbered split procedure above documents the original, pre-HBASE-26187 implementation, in
435+
which daughter regions are first created under a `.splits` sub-directory of the parent region
436+
directory. In newer HBase implementations that include
437+
[HBASE-26187](https://issues.apache.org/jira/browse/HBASE-26187), this on-disk layout has changed:
438+
daughter region directories are created directly under the table directory, rather than under a
439+
parent region's `.splits` directory. When reading the numbered procedure for such newer versions,
440+
interpret any steps that mention creating or using a `.splits` directory as instead preparing and
441+
promoting daughter region files directly under the table directory. This update does not change
442+
the high-level split semantics (references, meta updates, and online transition of daughters); it
443+
only affects where temporary/initial daughter files are prepared in HDFS.
444+
</Callout>
445+
431446
## Write Ahead Log (WAL)
432447

433448
### Purpose

hbase-website/package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)