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 "Jing Zhao (JIRA)" <ji...@apache.org> on 2013/06/04 20:17:21 UTC
[jira] [Created] (HDFS-4877) Snapshot: fix the scenario where a
directory is renamed under its prior descendant
Jing Zhao created HDFS-4877:
-------------------------------
Summary: Snapshot: fix the scenario where a directory is renamed under its prior descendant
Key: HDFS-4877
URL: https://issues.apache.org/jira/browse/HDFS-4877
Project: Hadoop HDFS
Issue Type: Bug
Affects Versions: 3.0.0
Reporter: Jing Zhao
Assignee: Jing Zhao
Priority: Critical
Suppose we have the following operations:
1. rename /dir1/foo/bar to /dir2/bar2
2. rename /dir1/foo to /dir2/bar2/foo2
I.e., we rename a directory (foo) to a child of its prior descendant (bar). If we have taken snapshots on root before the above 2 rename operations, a circle can be generated consisting of nodes with the types INodeReference.WithName and INodeReference.DstReference:
WithName (foo) --> WithCount (for foo) --> foo2 --> WithName (bar) --> WithCount (for bar) --> bar2 --> DstReference (foo) --> WithCount (for foo)
When deleting a snapshot before the rename operations, the current code may hit an infinite loop when cleaning the snapshot data or updating the quota usage for the nodes in the above circle. This jira will fix the issue.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira