[
https://issues.apache.org/jira/browse/HBASE-27994?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ConfX resolved HBASE-27994.
---------------------------
Resolution: Incomplete
> Missing null check of rpcServer.scheduler.executor causes NPE with invalid
> value of hbase.client.default.rpc.codec
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-27994
> URL: https://issues.apache.org/jira/browse/HBASE-27994
> Project: HBase
> Issue Type: Bug
> Reporter: ConfX
> Priority: Critical
>
> When {{hbase.client.default.rpc.codec}} is set to
> {{org.apache.hadoop.hbase.regionserver.wal.SecureWALCellCodec}} the method
> {{createRpcClientRTEDuringConnectionSetup}} gives a NoSuchMethodException for
> the provided default codec value.
> Since there was an exception, the code inside try block is not executed which
> contained the below code line
> {noformat}
> try (AbstractRpcClient<?> client =
> createRpcClientRTEDuringConnectionSetup(clientConf)) {
> rpcServer.start();
> . . .
> }{noformat}
> When finally block is executed which contains
> {noformat}
> finally {
> rpcServer.stop();
> }{noformat}
> The method {{rpcServer.stop()}} eventually makes call to
> {{{}executor.shutdown(){}}}. A null pointer exception is returned as
> {{rpcServer.scheduler.executor}} was never instantiated, which happens inside
> {{rpcServer.start()}}
> {noformat}
> java.lang.NullPointerException
> at
> org.apache.hadoop.hbase.ipc.FifoRpcScheduler.stop(FifoRpcScheduler.java:71)
> at
> org.apache.hadoop.hbase.ipc.SimpleRpcServer.stop(SimpleRpcServer.java:441)
> at
> org.apache.hadoop.hbase.ipc.AbstractTestIPC.testRTEDuringConnectionSetup(AbstractTestIPC.java:194)
> . . .{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)