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

Hong Tang commented on HDFS-677:
--------------------------------

bq. I do not anticipated any failure after that. But in case some exceptions 
happen, then the src is restored back in a finally block.

Are you asserting that restoring src back will guarantee to succeed? (Or die 
miserably, e.g. OOM and the whole NN will crash). 

A typical way of doing this is:
- lock down both src and dest node.
- Create src.shadow and dest.shadow and set up the state of src.shadow and 
dest.shadow as how src and dest would look like after the rename.
- Support a "guaranteed-to-success" "swap" operation on the node. And "swap" 
between src.shadow and src, and dest.shadow and dest. This is guaranteed to 
success. 


> Rename failure due to quota results in deletion of src directory
> ----------------------------------------------------------------
>
>                 Key: HDFS-677
>                 URL: https://issues.apache.org/jira/browse/HDFS-677
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: name-node
>    Affects Versions: 0.20.1, 0.20.2, 0.21.0, 0.22.0
>            Reporter: Suresh Srinivas
>            Assignee: Suresh Srinivas
>            Priority: Blocker
>             Fix For: 0.20.2, 0.21.0, 0.22.0
>
>         Attachments: hdfs-677.8.patch
>
>
> Renaming src to destination where src has exceeded the quota to a dst without 
> sufficent quota fails. During this failure, src is deleted. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to