hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eli Collins (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-6585) Add FileStatus#isDirectory and isFile
Date Wed, 05 May 2010 19:45:03 GMT

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

Eli Collins updated HADOOP-6585:
--------------------------------

    Attachment: hadoop-6585-4.patch

Thanks Hairong and Sanjay - glad we're all on the same page! 

Latest patch attached does not modify the behavior of FileStatus#isDir, just deprecates it,
updates its comment and removes all the added isDir asserts in the tests that are now no longer
necessary.

I left the ParentNotDirectoryException messages in FileSystem as is since getFileStatus will
always fully resolve the link, ie if the parent is not a directory it must be a file (as opposed
to getFileLinkStatus which can return a FileStatus that represents a link). Lemme know if
I missed something.

Ditto the comment in getContentSummary is correct since f can't be a symlink, I modified that
code to check isFile instead which is equivalent and I think more clear. 

Similarly in RawLocalFileSystem we want to check isDirectory in append since we are checking
the FileStatus that the path fully resolves to, and we want to make sure that's not a directory.
I should point out that in general the changes to FileSystem* are safe since isDir and isDirectory
are now equivalent and FileSystem* always uses getFileStatus.

> Add FileStatus#isDirectory and isFile
> -------------------------------------
>
>                 Key: HADOOP-6585
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6585
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: fs
>    Affects Versions: 0.21.0, 0.22.0
>            Reporter: Eli Collins
>            Assignee: Eli Collins
>            Priority: Blocker
>             Fix For: 0.21.0, 0.22.0
>
>         Attachments: hadoop-6585-1.patch, hadoop-6585-2.patch, hadoop-6585-3.patch, hadoop-6585-4.patch
>
>
> Per Sanjay's suggestion in HADOOP-6421 let's deprecate FileStatus#isDir() and add isDirectory()
and isFile() to compliment isSymlink. Currently clients assume !isDir() implies a file, which
is no longer true with symlinks. I'll file a separate jira to change the various uses of !isDir()
to be isFile() or isFile() or isSymlink() as appropriate.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message