[
https://issues.apache.org/jira/browse/HBASE-28778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang resolved HBASE-28778.
-------------------------------
Fix Version/s: 2.7.0
3.0.0-beta-2
2.6.1
2.5.11
Hadoop Flags: Reviewed
Resolution: Fixed
Pushed to all active branches.
Thanks [~guluo]!
> NPE may occur when opening master-status or table.jsp or procedure.jsp while
> Master is initializing
> ---------------------------------------------------------------------------------------------------
>
> Key: HBASE-28778
> URL: https://issues.apache.org/jira/browse/HBASE-28778
> Project: HBase
> Issue Type: Bug
> Components: UI
> Reporter: guluo
> Assignee: guluo
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.7.0, 3.0.0-beta-2, 2.6.1, 2.5.11
>
>
> The reason:
> For table.jsp, NPE may occur when calling master.getConnection() while
> Master is initializing.
> asyncClusterConnection will only be initialized when HMaster call method
> setupClusterConnection,
> so before that, asyncClusterConnection is null, at this moment, we would get
> NPE if opening table.jsp.
> procedure.jsp and master-status may also encounter NPE for the similar reason.
>
> Error Message:
> java.lang.NullPointerException: Cannot invoke
> "org.apache.hadoop.hbase.procedure2.ProcedureExecutor.getProcedures()"
> because "procExecutor" is null at
> org.apache.hadoop.hbase.generated.master.procedures_jsp._jspService(procedures_jsp.java:76)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111) at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1450)
> at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
> at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1656)
> at
> org.apache.hadoop.hbase.http.lib.StaticUserWebFilter$StaticUserFilter.doFilter(StaticUserWebFilter.java:117)
> at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
>
> 2024-08-13T20:41:40,056 WARN [qtp463313451-80] server.HttpChannel:
> /master-status
> java.lang.NullPointerException: Cannot invoke
> "org.apache.hadoop.hbase.master.assignment.RegionStateNode.isInState(org.apache.hadoop.hbase.master.RegionState$State[])"
> because "rsn" is null
> at
> org.apache.hadoop.hbase.master.http.MasterStatusServlet.getMetaLocationOrNull(MasterStatusServlet.java:80)
> ~[hbase-server-4.0.0-alpha-1-SNAPSHOT.jar:4.0.0-alpha-1-SNAPSHOT]
> at
> org.apache.hadoop.hbase.master.http.MasterStatusServlet.doGet(MasterStatusServlet.java:60)
> ~[hbase-server-4.0.0-alpha-1-SNAPSHOT.jar:4.0.0-alpha-1-SNAPSHOT]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
> ~[javax.servlet-api-3.1.0.jar:3.1.0]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> ~[javax.servlet-api-3.1.0.jar:3.1.0]
> at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
> ~[hbase-shaded-jetty-4.1.7.jar:?]
> at
> org.apache.hbase.thirdparty.org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1656)
> ~[hbase-shaded-jetty-4.1.7.jar:?]
> at
> org.apache.hadoop.hbase.http.lib.StaticUserWebFilter$StaticUserFilter.doFilter(StaticUserWebFilter.java:117)
> ~[hbase-http-4.0.0-alpha-1-SNAPSHOT.jar:4.0.0-alpha-1-SNAPSHOT]
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)