You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zh...@apache.org on 2023/12/04 07:57:26 UTC
(hbase) branch branch-2.6 updated: HBASE-28226 Add logic to check for RegionStateNode null pointer in FlushRegionProcedure (#5548)
This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch branch-2.6
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-2.6 by this push:
new 35603fa1d49 HBASE-28226 Add logic to check for RegionStateNode null pointer in FlushRegionProcedure (#5548)
35603fa1d49 is described below
commit 35603fa1d49c416d9300bf0472147b3fb1f3bbb8
Author: hiping-tech <58...@users.noreply.github.com>
AuthorDate: Mon Dec 4 15:51:28 2023 +0800
HBASE-28226 Add logic to check for RegionStateNode null pointer in FlushRegionProcedure (#5548)
Co-authored-by: lvhaiping.lhp <lv...@alibaba-inc.com>
Signed-off-by: Duo Zhang <zh...@apache.org>
(cherry picked from commit 8631714705231aa5db5397d92e4ea9d0e5625129)
---
.../apache/hadoop/hbase/master/procedure/FlushRegionProcedure.java | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/FlushRegionProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/FlushRegionProcedure.java
index 67f0442b618..88f7e652cbf 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/FlushRegionProcedure.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/FlushRegionProcedure.java
@@ -88,6 +88,11 @@ public class FlushRegionProcedure extends Procedure<MasterProcedureEnv>
RegionStates regionStates = env.getAssignmentManager().getRegionStates();
RegionStateNode regionNode = regionStates.getRegionStateNode(region);
+ if (regionNode == null) {
+ LOG.debug("Region {} is not in region states, it is very likely that it has been cleared by"
+ + " other procedures such as merge or split, so skip {}. See HBASE-28226", region, this);
+ return null;
+ }
regionNode.lock();
try {
if (!regionNode.isInState(State.OPEN) || regionNode.isInTransition()) {