[
https://issues.apache.org/jira/browse/HBASE-24370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17115022#comment-17115022
]
Hudson commented on HBASE-24370:
--------------------------------
Results for branch branch-2
[build #2674 on
builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2674/]:
(/) *{color:green}+1 overall{color}*
----
details (if available):
(/) {color:green}+1 general checks{color}
-- For more information [see general
report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2674/General_20Nightly_20Build_20Report/]
(/) {color:green}+1 jdk8 hadoop2 checks{color}
-- For more information [see jdk8 (hadoop2)
report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2674/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/]
(/) {color:green}+1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3)
report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2674/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11
report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/2674/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 source release artifact{color}
-- See build output for details.
(/) {color:green}+1 client integration test{color}
> Avoid aggressive MergeRegion and GCMultipleMergedRegionsProcedure
> ------------------------------------------------------------------
>
> Key: HBASE-24370
> URL: https://issues.apache.org/jira/browse/HBASE-24370
> Project: HBase
> Issue Type: Bug
> Components: master
> Reporter: Huaxiang Sun
> Assignee: Huaxiang Sun
> Priority: Major
>
> In
> [https://github.com/apache/hbase/blob/a40a0322a73add68d9cb0579abacdd6a2e41e8fb/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java#L478,
>
> |https://github.com/apache/hbase/blob/a40a0322a73add68d9cb0579abacdd6a2e41e8fb/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java#L478]
> prepareMergeRegion, it checks if one of merged parent regions is a merged
> child region and has not been GCed. If it is ready to GC, it will kick off a
> GCMultipleMergedRegionsProcedure and also start the MergeRegionProcedure.
> There is a race condition here. If MergeRegionProcedure finishes first, it
> will delete meta row for the merged child region. Then
> GCMultipleMergedRegionsProcedure runs, and because the newly added check, it
> thinks GC has been done and wont schedule GCRegionProcedure to clean up those
> merged parent regions. The end result is that these merged parent regions are
> left as orphans on Filesystem.
>
> [https://github.com/apache/hbase/blob/a40a0322a73add68d9cb0579abacdd6a2e41e8fb/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/GCMultipleMergedRegionsProcedure.java#L105]
>
> The proposed solution is to avoid being so aggressive, if it needs to kick
> off GCMultipleMergedRegionsProcedure, then abort MergeRegionProcedure and
> user can try MergeRegionProcedure later.
> [|https://github.com/apache/hbase/blob/a40a0322a73add68d9cb0579abacdd6a2e41e8fb/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java#L478]
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)