[ 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)