Guocui Mi created HDFS-9836:
-------------------------------

             Summary: RequestHedgingInvocationHandler can't be cast to 
org.apache.hadoop.ipc.RpcInvocationHandler
                 Key: HDFS-9836
                 URL: https://issues.apache.org/jira/browse/HDFS-9836
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: ha
    Affects Versions: 2.8.0
            Reporter: Guocui Mi


RequestHedgingInvocationHandler cannot be cast to 
org.apache.hadoop.ipc.RpcInvocationHandler

Reproduce steps:
1: Set client failover provider as RequestHedgingProxyProvider.
<property>
    <name>dfs.client.failover.proxy.provider.[nameservice]</name>
    
<value>org.apache.hadoop.hdfs.server.namenode.ha.RequestHedgingProxyProvider</value>
  </property>

2: run hdfs fsck / will get following exceptions.
C:\>hdfs fsck /
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in 
[jar:file:/D:/data/hadoop.latest/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in 
[jar:file:/D:/data/hadoop.latest/share/hadoop/yarn/hadoop-yarn-simulator-2.6.0-mt0.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Exception in thread "main" java.lang.ClassCastException: 
org.apache.hadoop.hdfs.server.namenode.ha.RequestHedgingProxyProvider$RequestHedgingInvocationHandler
 c
annot be cast to org.apache.hadoop.ipc.RpcInvocationHandler
        at org.apache.hadoop.ipc.RPC.getConnectionIdForProxy(RPC.java:613)
        at 
org.apache.hadoop.io.retry.RetryInvocationHandler.getConnectionId(RetryInvocationHandler.java:281)
        at org.apache.hadoop.ipc.RPC.getConnectionIdForProxy(RPC.java:615)
        at org.apache.hadoop.ipc.RPC.getServerAddress(RPC.java:598)
        at org.apache.hadoop.hdfs.HAUtil.getAddressOfActive(HAUtil.java:380)
        at 
org.apache.hadoop.hdfs.tools.DFSck.getCurrentNamenodeAddress(DFSck.java:248)
        at org.apache.hadoop.hdfs.tools.DFSck.doWork(DFSck.java:255)
        at org.apache.hadoop.hdfs.tools.DFSck.access$000(DFSck.java:72)
        at org.apache.hadoop.hdfs.tools.DFSck$1.run(DFSck.java:148)
        at org.apache.hadoop.hdfs.tools.DFSck$1.run(DFSck.java:145)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671)
        at org.apache.hadoop.hdfs.tools.DFSck.run(DFSck.java:144)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
        at org.apache.hadoop.hdfs.tools.DFSck.main(DFSck.java:360)




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

Reply via email to