[ 
https://issues.apache.org/jira/browse/HADOOP-9261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steve Loughran updated HADOOP-9261:
-----------------------------------

    Attachment: HADOOP-9261-2.patch

There's enough changes here that we do need rigorous review.
The previous patch saw copy-onto-self and bailed out early -but these checks 
were made before the destination path was fully generated -because if you 
specify a destination directory, the source goes in under there. Which means 
you could set the dest dir to be the parent of the source file, so generating a 
rename(src, src) after the equality check had taken place -a rename that would 
return false.
Now the value is checked once up front -for fast exit without talking to S3, 
and then just before the operation actually takes place.
I also added lots of inline comments to make it clearer what is going on.
                
> S3n filesystem can move a directory under itself -and so lose data
> ------------------------------------------------------------------
>
>                 Key: HADOOP-9261
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9261
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs/s3
>    Affects Versions: 1.1.1, 2.0.2-alpha
>         Environment: Testing against S3 bucket stored on US West (Read after 
> Write consistency; eventual for read-after-delete or write-after-write)
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>         Attachments: HADOOP-9261-2.patch, HADOOP-9261.patch
>
>
> The S3N filesystem {{rename()}} doesn't make sure that the destination 
> directory is not a child or other descendant of the source directory. The 
> files are copied to the new destination, then the source directory is 
> recursively deleted, so losing data.

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

Reply via email to