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

Yonger commented on HADOOP-14745:
---------------------------------

So i think we should call getFileStatus with explicitly expect,  e.g.
getFileStatus(path,true)
true means we think the path we input is a directory

In internal of getFileStatus, i think the call like above will skip the first 
two getObjectMetadata call, and only list the object under this given path, 
which also benefit the performance of this network consuming function. 



> s3a getFileStatus can't return expect result when existing a file and 
> directory with the same name
> --------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-14745
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14745
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs/s3
>    Affects Versions: 2.8.0
>            Reporter: Yonger
>            Assignee: Yonger
>
> [**** hadoop-aws]# /root/hadoop/s3cmd/s3cmd ls s3://test-aws-s3a/user/root/
>                        DIR   s3://test-aws-s3a/user/root/ccc/
> 2017-08-08 07:04         0   s3://test-aws-s3a/user/root/ccc
> if we expect to ccc is a directory by code :
>     Path test=new Path("ccc");
>     fs.getFileStatus(test);
> actually, it will tell us it is a file:
> 2017-08-08 15:08:40,566 [JUnit-case1] DEBUG s3a.S3AFileSystem 
> (S3AFileSystem.java:getFileStatus(1576)) - Getting path status for 
> s3a://test-aws-s3a/user/root/ccc  (user/root/ccc)
> 2017-08-08 15:08:40,566 [JUnit-case1] DEBUG s3a.S3AFileSystem 
> (S3AStorageStatistics.java:incrementCounter(60)) - object_metadata_requests 
> += 1  ->  3
> 2017-08-08 15:08:40,580 [JUnit-case1] DEBUG s3a.S3AFileSystem 
> (S3AFileSystem.java:getFileStatus(1585)) - Found exact file: normal file



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to