[ 
https://issues.apache.org/jira/browse/HBASE-13318?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell updated HBASE-13318:
-----------------------------------
    Summary: RpcServer.getListenerAddress should handle when the accept channel 
is closed  (was: RpcServer.Listener.getAddress should be synchronized)

> RpcServer.getListenerAddress should handle when the accept channel is closed
> ----------------------------------------------------------------------------
>
>                 Key: HBASE-13318
>                 URL: https://issues.apache.org/jira/browse/HBASE-13318
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.10.1
>            Reporter: Lars Hofhansl
>            Assignee: Andrew Purtell
>            Priority: Minor
>              Labels: thread-safety
>
> We just saw exceptions like these:
> {noformat}
> 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)
> {noformat}
> 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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to