ConfX created HBASE-28452: ----------------------------- Summary: Missing null check of rpcServer.scheduler.executor causes NPE with invalid value of hbase.client.default.rpc.codec Key: HBASE-28452 URL: https://issues.apache.org/jira/browse/HBASE-28452 Project: HBase Issue Type: Bug Reporter: ConfX
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 ``` java try (AbstractRpcClient<?> client = createRpcClientRTEDuringConnectionSetup(clientConf)) { rpcServer.start(); . . . } ``` When finally block is executed which contains ```java finally { rpcServer.stop(); } ``` 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()` ``` 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) . . . ``` -- This message was sent by Atlassian Jira (v8.20.10#820010)