[ https://issues.apache.org/jira/browse/HADOOP-6240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12755282#action_12755282 ]
Suresh Srinivas commented on HADOOP-6240: ----------------------------------------- Based on discussion everyone seems to agree with the following behavior: # rename2 will return void and throw IOException to indicate failures. # rename2 will fail when renaming from file to directory or directory to file # rename2 from /a/b to /c/d will fail if {c} does not exist # rename2 will not have consistent behavior when the dst directory exists: #* if dst directory exists it will not behave like move as it does today We need to agree on one of the options for rename2 behavior: # rename2 from /a/file1 to /b/file when /b/file2 #* option1: posix behavior - if /b/file2 exists remove it and rename2 it (atomic if possible) #* option2: current behavior - if /b/file2 exists throw IOException that destination already exists # rename2 from /a/dir1 to /b/file when /b/dir2 #* option1: posix behavior - if /b/dir2 exists remove it and rename2 it (atomic if possible) #* option2: if /b/dir2 exists throw IOException that destination already exists Can you vote on which option to go with? I will post a comment about implementation details once we have an agreement on the functionality. > Rename operation is not consistent between different implementations of > FileSystem > ---------------------------------------------------------------------------------- > > Key: HADOOP-6240 > URL: https://issues.apache.org/jira/browse/HADOOP-6240 > Project: Hadoop Common > Issue Type: Bug > Components: fs > Reporter: Suresh Srinivas > Assignee: Suresh Srinivas > Fix For: 0.21.0 > > > The rename operation has many scenarios that are not consistently implemented > across file systems. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.