You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Tsz Wo Nicholas Sze (JIRA)" <ji...@apache.org> on 2014/05/12 15:34:15 UTC

[jira] [Created] (HDFS-6371) In HA setup, the standby NN should redirect WebHDFS write requests to the active NN

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)