Details
Description
We just saw exceptions like these:
Exception in thread "B.DefaultRpcServer.handler=45,queue=0,port=60020" java.lang.NullPointerException at org.apache.hadoop.hbase.ipc.RpcServer$Listener.getAddress(RpcServer.java:753) at org.apache.hadoop.hbase.ipc.RpcServer.getListenerAddress(RpcServer.java:2157) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:146) at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130) at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107) at java.lang.Thread.run(Thread.java:745)
Looks like RpcServer$Listener.getAddress should be synchronized (acceptChannel is set to null upon exiting the thread under in a synchronized block).
Should be happening very rarely only.