Tsz Wo Nicholas Sze created HDFS-6371:
-----------------------------------------

             Summary: In HA setup, the standby NN should redirect WebHDFS write 
requests to the active NN
                 Key: HDFS-6371
                 URL: https://issues.apache.org/jira/browse/HDFS-6371
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: webhdfs
            Reporter: Tsz Wo Nicholas Sze
            Assignee: Tsz Wo Nicholas Sze


The current WebHDFS implementation in namenode does not check its HA state -- 
it does the same thing no matter it is active or standby.

Suppose a http client talk to the standby NN via WebHDFS.  For the read 
operations, there is no problem.  For the write operations, if the operation 
requires http redirect (e.g. creating a file), it will work since the standby 
NN will also redirect the client to a DN.  When the client connect to the DN, 
the DN will fulfill the request with the active NN.  However, for the write 
operations not requiring http redirect (e.g. mkdir), the operation will fail 
with StandbyException since it will be executed with the standby NN.

There are two solutions:
# The http client could catch StandbyException and then retries with the other 
NN in this case.
# The standby NN redirects the request to the active NN.

The second solution seems better since the client does not need to know both 
active NN and standby NN.

Note that WebHdfsFileSystem is already able to handle HA failover.  The JIRA is 
for other http clients.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to