hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kihwal Lee (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-5924) Utilize OOB upgrade message processing for writes
Date Mon, 24 Feb 2014 23:50:20 GMT

    [ https://issues.apache.org/jira/browse/HDFS-5924?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13911003#comment-13911003

Kihwal Lee commented on HDFS-5924:

bq. By seeing the patch attached, waiting will happen if only local datanode is restarted
for upgrade. Is that enough? no need to wait if other node in the pipeline is being upgraded.?

It will wait for a non-local datanode if the node is the only one in the write pipeline. Otherwise,
clients will simply apply the normal pipeline recovery procedure, which will take less time.
 The abandoned replica will get block-reported when the datanode restarts. If the client did
pipeline recovery, NN can mark it as corrupt right away since the generation number wouldn't
match. If the report comes before the  pipeline recovery, it will be added in the replica
list of the BlockInfoUnderConstruction, if not already there. When the pipeline recovery performed
by the client, the outdated replica will get removed.

> Utilize OOB upgrade message processing for writes
> -------------------------------------------------
>                 Key: HDFS-5924
>                 URL: https://issues.apache.org/jira/browse/HDFS-5924
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode, ha, hdfs-client, namenode
>            Reporter: Kihwal Lee
>            Assignee: Kihwal Lee
>         Attachments: HDFS-5924_RBW_RECOVERY.patch, HDFS-5924_RBW_RECOVERY.patch
> After HDFS-5585 and HDFS-5583, clients and datanodes can coordinate shutdown-restart
in order to minimize failures or locality loss.
> In this jira, HDFS client is made aware of the restart OOB ack and perform special write
pipeline recovery. Datanode is also modified to load marked RBW replicas as RBW instead of
RWR as long as the restart did not take long. 
> For clients, it considers doing this kind of recovery only when there is only one node
left in the pipeline or the restarting node is a local datanode.  For both clients and datanodes,
the timeout or expiration is configurable, meaning this feature can be turned off by setting
timeout variables to 0.

This message was sent by Atlassian JIRA

View raw message