This is an automated email from the ASF dual-hosted git repository. zhangduo pushed a commit to branch branch-2 in repository https://gitbox.apache.org/repos/asf/hbase.git
commit de37c4cebacfb7859783200301680f1cabc50060 Author: guluo <[email protected]> AuthorDate: Thu Jul 6 10:32:38 2023 +0800 HBASE-27859 HMaster.getCompactionState can happen NPE when region state is closed (#5232) Signed-off-by: Duo Zhang <[email protected]> Signed-off-by: Wellington Chevreuil <[email protected]> (cherry picked from commit b2e2abe64bd9f3d511b8193510fe66c76ff7854c) --- .../src/main/java/org/apache/hadoop/hbase/master/HMaster.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java index b61737020da..e5625820874 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java @@ -4146,6 +4146,11 @@ public class HMaster extends HRegionServer implements MasterServices { continue; } RegionMetrics regionMetrics = sl.getRegionMetrics().get(regionInfo.getRegionName()); + if (regionMetrics == null) { + LOG.warn("Can not get compaction details for the region: {} , it may be not online.", + regionInfo.getRegionNameAsString()); + continue; + } if (regionMetrics.getCompactionState() == CompactionState.MAJOR) { if (compactionState == CompactionState.MINOR) { compactionState = CompactionState.MAJOR_AND_MINOR;
