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
The following commit(s) were added to refs/heads/branch-2 by this push:
new 7b892a25dc2 HBASE-29038 Fix NPE in processRS.jsp due to missing MBean
value (#6556)
7b892a25dc2 is described below
commit 7b892a25dc2dfb4701cfb10b4695b48320b1165e
Author: Aaron Beitch <[email protected]>
AuthorDate: Fri Feb 14 06:52:24 2025 -0800
HBASE-29038 Fix NPE in processRS.jsp due to missing MBean value (#6556)
Signed-off-by: Duo Zhang <[email protected]>
(cherry picked from commit c9f7dad0c94a114ab04b5f348e555fcc12d8b8d2)
---
.../src/main/resources/hbase-webapps/regionserver/processRS.jsp | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git
a/hbase-server/src/main/resources/hbase-webapps/regionserver/processRS.jsp
b/hbase-server/src/main/resources/hbase-webapps/regionserver/processRS.jsp
index f22358a8cc8..1058d8d15e1 100644
--- a/hbase-server/src/main/resources/hbase-webapps/regionserver/processRS.jsp
+++ b/hbase-server/src/main/resources/hbase-webapps/regionserver/processRS.jsp
@@ -33,6 +33,8 @@
RuntimeMXBean runtimeBean = ManagementFactory.getRuntimeMXBean();
ObjectName jvmMetrics = new ObjectName("Hadoop:service=HBase,name=JvmMetrics");
ObjectName rsMetrics = new
ObjectName("Hadoop:service=HBase,name=RegionServer,sub=Server");
+Object pauseWarnThresholdExceeded =
JSONMetricUtil.getValueFromMBean(rsMetrics, "pauseWarnThresholdExceeded");
+Object pauseInfoThresholdExceeded =
JSONMetricUtil.getValueFromMBean(rsMetrics, "pauseInfoThresholdExceeded");
// There is always two of GC collectors
List<GarbageCollectorMXBean> gcBeans = JSONMetricUtil.getGcCollectorBeans();
@@ -60,7 +62,7 @@ pageContext.setAttribute("pageTitle", "Process info for PID:
" + JSONMetricUtil.
<th>Started</th>
<th>Uptime</th>
<th>PID</th>
- <th>JvmPauseMonitor Count </th>
+ <th>JvmPauseMonitor Count</th>
<th>Owner</th>
</tr>
<tr>
@@ -68,8 +70,8 @@ pageContext.setAttribute("pageTitle", "Process info for PID:
" + JSONMetricUtil.
<td><%= new Date(runtimeBean.getStartTime()) %></td>
<td><%= StringUtils.humanTimeDiff(runtimeBean.getUptime()) %></td>
<td><%= JSONMetricUtil.getProcessPID() %></td>
- <td><%= (long)JSONMetricUtil.getValueFromMBean(rsMetrics,
"pauseWarnThresholdExceeded")
- + (long)JSONMetricUtil.getValueFromMBean(rsMetrics,
"pauseInfoThresholdExceeded") %></td>
+ <td><%= pauseWarnThresholdExceeded != null &&
pauseInfoThresholdExceeded != null ?
+ (long)pauseWarnThresholdExceeded +
(long)pauseInfoThresholdExceeded : 0 %></td>
<td><%= runtimeBean.getSystemProperties().get("user.name") %></td>
</tr>
</table>