[ 
https://issues.apache.org/jira/browse/HBASE-15856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15294328#comment-15294328
 ] 

Hudson commented on HBASE-15856:
--------------------------------

FAILURE: Integrated in HBase-1.4 #166 (See 
[https://builds.apache.org/job/HBase-1.4/166/])
HBASE-15856 Don't cache unresolved addresses for connections (garyh: rev 
df40739ae7217568b5dfeb9eb8fe922f6242042a)
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestClientTimeouts.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestConnectionImplementation.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/AbstractRpcClient.java
* 
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestMasterNoCluster.java


> Cached Connection instances can wind up with addresses never resolved
> ---------------------------------------------------------------------
>
>                 Key: HBASE-15856
>                 URL: https://issues.apache.org/jira/browse/HBASE-15856
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Gary Helmling
>            Assignee: Gary Helmling
>            Priority: Critical
>             Fix For: 2.0.0, 1.3.0, 1.2.2, 0.98.20, 1.1.6
>
>         Attachments: HBASE-15856.001.patch, HBASE-15856.002.patch, 
> HBASE-15856.003.patch
>
>
> During periods where DNS is not working properly, we can wind up caching 
> connections to master or regionservers where the initial hostname resolution 
> and the resolution is never re-attempted.  This means that clients will 
> forever get UnknownHostException for any calls.
> When constructing a BlockingRpcChannelImplementation, we instantiate the 
> InetSocketAddress to use for the connection.  This instance is then used in 
> the rpc client connection, where we check isUnresolved() and throw an 
> UnknownHostException if that returns true.  However, at this point the rpc 
> channel is already cached in the HConnectionImplementation map of stubs.  So 
> at this point it will never be resolved.
> Setting the config for hbase.resolve.hostnames.on.failure masks this issue, 
> since the stub key used is modified to contain the address.  However, even in 
> that case, if DNS fails, an rpc channel instance with unresolved ISA will 
> still be cached in the stubs under the hostname only key.



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

Reply via email to