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

Suresh Srinivas commented on HADOOP-8139:
-----------------------------------------

bq. If it's windows and it's a local filesystem URI, do the os-specific subbing.
I already had raised a few issues with this approach. Let me state it again:
# Applications with paths using / as separator could be used from/on 
Unix/Windows:
#* Some times \ becomes escape character and some times separator. That means 
the problem stated in this jira some times happens and some times not! We could 
argue that it is better than what we have today - that is - every time \ is 
misinterpreted as path separator. Still, this will be very confusing for the 
users. The only way to around this, I can see is, all users running apps on 
Unix must use / and windows use \ as separators, which is even more confusing.
# Applications with paths using \ as separator could be used from/on 
Unix/Windows:
#* Here on windows, things works. The same path will not work at all for Unix!

I feel we should consider removing support for paths using \ as separator. Some 
of the arguments around RawLocalFileSystem, I have hard time following, may be 
because I have not seen them.
                
> Path does not allow metachars to be escaped
> -------------------------------------------
>
>                 Key: HADOOP-8139
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8139
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 0.23.0, 0.24.0
>            Reporter: Daryn Sharp
>            Assignee: Daryn Sharp
>            Priority: Blocker
>         Attachments: HADOOP-8139-2.patch, HADOOP-8139.patch, HADOOP-8139.patch
>
>
> Path converts "\" into "/", probably for windows support?  This means it's 
> impossible for the user to escape metachars in a path name.  Glob expansion 
> can have deadly results.
> Here are the most egregious examples. A user accidentally creates a path like 
> "/user/me/*/file".  Now they want to remove it.
> {noformat}"hadoop fs -rmr -skipTrash '/user/me/\*'" becomes...
> "hadoop fs -rmr -skipTrash /user/me/*"{noformat}
> * User/Admin: Nuked their home directory or any given directory
> {noformat}"hadoop fs -rmr -skipTrash '\*'" becomes...
> "hadoop fs -rmr -skipTrash /*"{noformat}
> * User:  Deleted _everything_ they have access to on the cluster
> * Admin: *Nukes the entire cluster*
> Note: FsShell is shown for illustrative purposes, however the problem is in 
> the Path object, not FsShell.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to