[
https://issues.apache.org/jira/browse/HBASE-28088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17894919#comment-17894919
]
Andor Molnar commented on HBASE-28088:
--------------------------------------
How about throwing *AccessDeniedException* explaining to the client that
"Server not available yet" which will hopefully force it to re-try?
> NullPointerException authorizing connection on regionserver startup
> -------------------------------------------------------------------
>
> Key: HBASE-28088
> URL: https://issues.apache.org/jira/browse/HBASE-28088
> Project: HBase
> Issue Type: Bug
> Reporter: Bryan Beaudreault
> Priority: Major
>
> When a RegionServer starts up, the HRegionServer constructor calls
> createRpcServices() which creates RSRpcServices, which uses RpcServerFactory
> to create a NettyRpcServer. The NettyRpcServer constructor binds the process
> to the given regionserver port. At this point it is able to accept requests.
> Later in the HRegionServer constructor, it calls
> rpcServices.start(zooKeeper). This calls NettyRpcServer.start(), which
> initializes the AuthManager.
> Since there is a period of time where the server can accept requests but
> AuthManager is not initialized, if you have authentication enabled you will
> receive NullPointerExceptions (see below). These will clear up once the
> server starts.
> We should fix the flow here to avoid these errors.
> {code:java}
> 2023-09-15T20:47:35,300 [RS-EventLoopGroup-1-3] WARN
> org.apache.hadoop.hbase.ipc.NettyRpcServer: Connection xxx.xxx.xxx.xxx:49402;
> caught unexpected downstream exception.
> java.lang.NullPointerException: Cannot invoke
> "org.apache.hadoop.security.authorize.ServiceAuthorizationManager.authorize(org.apache.hadoop.security.UserGroupInformation,
> java.lang.Class, org.apache.hadoop.conf.Configuration,
> java.net.InetAddress)" because "this.authManager" is null
> at
> org.apache.hadoop.hbase.ipc.RpcServer.authorize(RpcServer.java:654)
> ~[hbase-server-2.5-hubspot-20230913.131903-57.jar:2.5-hubspot-SNAPSHOT]
> at
> org.apache.hadoop.hbase.ipc.ServerRpcConnection.authorizeConnection(ServerRpcConnection.java:381)
> ~[hbase-server-2.5-hubspot-20230913.131903-57.jar:2.5-hubspot-SNAPSHOT]
> at
> org.apache.hadoop.hbase.ipc.ServerRpcConnection.processOneRpc(ServerRpcConnection.java:362)
> ~[hbase-server-2.5-hubspot-20230913.131903-57.jar:2.5-hubspot-SNAPSHOT]
> at
> org.apache.hadoop.hbase.ipc.NettyServerRpcConnection.process(NettyServerRpcConnection.java:89)
> ~[hbase-server-2.5-hubspot-20230913.131903-57.jar:2.5-hubspot-SNAPSHOT]
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)