[ 
https://issues.apache.org/jira/browse/HADOOP-16380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16888150#comment-16888150
 ] 

Steve Loughran commented on HADOOP-16380:
-----------------------------------------

# Yes, your patch is essential
# This has a separate problem, where if there there is a tombstone, 
expired-or-not, and there is an entry in the S3 store anywhere under that path, 
then the directory will be interpreted as empty if the tombstone comes before 
any file in the listing.

> S3A tombstones can confuse empty directory status
> -------------------------------------------------
>
>                 Key: HADOOP-16380
>                 URL: https://issues.apache.org/jira/browse/HADOOP-16380
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3, test
>    Affects Versions: 3.2.0, 3.0.3, 3.3.0, 3.1.2
>            Reporter: Steve Loughran
>            Assignee: Gabor Bota
>            Priority: Blocker
>
> If S3AFileSystem does an S3 LIST restricted to a single object to see if a 
> directory is empty, and the single entry found has a tombstone marker (either 
> from an inconsistent DDB Table or from an eventually consistent LIST) then it 
> will consider the directory empty, _even if there is 1+ entry which is not 
> deleted_
> We need to make sure the calculation of whether a directory is empty or not 
> is resilient to this, efficiently. 
> It surfaces  as an issue two places
> * delete(path) (where it may make things worse)
> * rename(src, dest), where a check is made for dest != an empty directory.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to