[
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.