[
https://issues.apache.org/jira/browse/HADOOP-12543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14988648#comment-14988648
]
Kazuho Fujii commented on HADOOP-12543:
---------------------------------------
Hi, thanks for the comment.
{{new Path(new Path("/tmp"), new Path(".."))}} equals {{new Path("/")}}. {{new
Path("/").isRoot()}} equals true. This is OK.
The behavior for relative path is misreading. {{new Path("..").getParent()}}
equals {{new Path(".")}}. {{new Path(".").isRoot()}} always return true in the
current implementation.
A Path class object doesn't know the working directory. It can not say whether
it repesents the root directory for relative path.
Just seeing the method name and the comment, I misunderstood it returns true
iif the path is "/".
> Path#isRoot() returns true if the path is ".".
> ----------------------------------------------
>
> Key: HADOOP-12543
> URL: https://issues.apache.org/jira/browse/HADOOP-12543
> Project: Hadoop Common
> Issue Type: Bug
> Components: fs
> Reporter: Kazuho Fujii
> Attachments: HADOOP-12543.001.patch
>
>
> {{Path#isRoot()}} method is expected to return true if and only if the path
> represents the root of a file system. But, it returns true in the case where
> the path is ".". This is because {{getParent()}} method returns null when the
> path in URI is empty.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)