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

Takanobu Asanuma commented on HDFS-13661:
-----------------------------------------

[~ayushtkn] Sorry for my late response.

bq. For all other EC operations it would be getting the exception only and I 
guess we should be inline with them.
Since other EC operations are hdfs command (not hadoop command), they are in 
hadoop-hdfs moudle. They use the following logic.

{code}
if (!(fs instanceof DistributedFileSystem)) {
  throw new IllegalArgumentException("FileSystem " + fs.getUri() + 
  " is not an HDFS file system");
}
{code}

Ls command can't use the logic because it is in hadoop-common and can't see 
{{DistributedFileSystem}}.

I looked for other ways, but on client (hadoop-common) sides, I think it is 
hard to know whether filesystem supports EC or not unless we create a new API 
in FileSystem.

> Ls command with e option fails when the filesystem is not HDFS
> --------------------------------------------------------------
>
>                 Key: HDFS-13661
>                 URL: https://issues.apache.org/jira/browse/HDFS-13661
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: erasure-coding, tools
>    Affects Versions: 3.1.0, 3.0.3
>            Reporter: Takanobu Asanuma
>            Assignee: Takanobu Asanuma
>            Priority: Major
>         Attachments: HDFS-13661.1.patch
>
>
> {noformat}
> $ hadoop fs -ls -e file://
> Found 10 items
> -ls: Fatal internal error
> java.lang.NullPointerException
>       at org.apache.hadoop.fs.shell.Ls.adjustColumnWidths(Ls.java:308)
>       at org.apache.hadoop.fs.shell.Ls.processPaths(Ls.java:242)
>       at org.apache.hadoop.fs.shell.Command.recursePath(Command.java:387)
>       at org.apache.hadoop.fs.shell.Ls.processPathArgument(Ls.java:226)
>       at org.apache.hadoop.fs.shell.Command.processArgument(Command.java:285)
>       at org.apache.hadoop.fs.shell.Command.processArguments(Command.java:269)
>       at 
> org.apache.hadoop.fs.shell.FsCommand.processRawArguments(FsCommand.java:120)
>       at org.apache.hadoop.fs.shell.Command.run(Command.java:176)
>       at org.apache.hadoop.fs.FsShell.run(FsShell.java:328)
>       at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
>       at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90)
>       at org.apache.hadoop.fs.FsShell.main(FsShell.java:391)
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to