This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/master by this push:
new fd50561a099 HBASE-29066 Fix NPE in rits.jsp when regions are not open
(#6594)
fd50561a099 is described below
commit fd50561a099a5b3b44b209d5b806e70f24c2aa9c
Author: Junegunn Choi <[email protected]>
AuthorDate: Sat Mar 1 01:07:02 2025 +0900
HBASE-29066 Fix NPE in rits.jsp when regions are not open (#6594)
Signed-off-by: Duo Zhang <[email protected]>
---
.../apache/hadoop/hbase/master/assignment/RegionStateNode.java | 8 ++++++++
hbase-server/src/main/resources/hbase-webapps/master/rits.jsp | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
index abfe8b40435..402c22ac9ed 100644
---
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
+++
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStateNode.java
@@ -245,6 +245,14 @@ public class RegionStateNode implements
Comparable<RegionStateNode> {
return regionLocation;
}
+ public String getRegionServerName() {
+ ServerName sn = getRegionLocation();
+ if (sn != null) {
+ return sn.getServerName();
+ }
+ return null;
+ }
+
public State getState() {
return state;
}
diff --git a/hbase-server/src/main/resources/hbase-webapps/master/rits.jsp
b/hbase-server/src/main/resources/hbase-webapps/master/rits.jsp
index 802a66b5890..41c4ba85700 100644
--- a/hbase-server/src/main/resources/hbase-webapps/master/rits.jsp
+++ b/hbase-server/src/main/resources/hbase-webapps/master/rits.jsp
@@ -97,7 +97,7 @@
<td><%= regionStateNode.getRegionInfo().getEncodedName()
%></td>
<td><%= regionStateNode.getRegionInfo().getTable() %></td>
<td><%= regionStateNode.getState() %></td>
- <td><%= regionStateNode.getRegionLocation().getServerName()
%></td>
+ <td><%= regionStateNode.getRegionServerName() %></td>
<%
TransitRegionStateProcedure procedure =
regionStateNode.getProcedure();
@@ -134,7 +134,7 @@
r.put("region", regionStateNode.getRegionInfo().getEncodedName());
r.put("table",
regionStateNode.getRegionInfo().getTable().getNameAsString());
r.put("state", regionStateNode.getState());
- r.put("server",
regionStateNode.getRegionLocation().getServerName());
+ r.put("server", regionStateNode.getRegionServerName());
TransitRegionStateProcedure procedure =
regionStateNode.getProcedure();
if (procedure != null) {