You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Sowmya Ramesh (JIRA)" <ji...@apache.org> on 2015/03/12 19:39:38 UTC

[jira] [Created] (HDFS-7921) FileSystem listFiles doesn't list the directories if recursive is false

Sowmya Ramesh created HDFS-7921:
-----------------------------------

             Summary: FileSystem listFiles doesn't list the directories if recursive is false
                 Key: HDFS-7921
                 URL: https://issues.apache.org/jira/browse/HDFS-7921
             Project: Hadoop HDFS
          Issue Type: Bug
    Affects Versions: 2.5.0
            Reporter: Sowmya Ramesh


Below code, lists only files and not dirs if recursive is set to false. If recursive is set to true list all dirs and files. If recursive is set to false it should behave similar to hadoop fs -ls <path> which is not the case.

{code}
FileSystem fs = FileSystem.get(uri, conf);
        RemoteIterator<LocatedFileStatus> fileStatusListIterator = fs.listFiles(new Path("/tmp"), false);

        while(fileStatusListIterator.hasNext()) {
            LocatedFileStatus fileStatus = fileStatusListIterator.next();
            System.out.println("Path: " + fileStatus.getPath());
        }

Test results :
Path: hdfs://240.0.0.10:8020/tmp/idtest.hadoopqe.580215.29151.in
Path: hdfs://240.0.0.10:8020/tmp/idtest.hadoopqe.580215.29151.pig

[root@node-1 hive-repl-recipe]# hadoop fs -ls /tmp
Found 4 items
drwx-wx-wx   - hadoopqe hdfs          0 2015-03-02 17:52 /tmp/hive
drwxr-xr-x   - hadoopqe hdfs          0 2015-03-02 17:51 /tmp/id.out
-rw-r--r--   3 hadoopqe hdfs       2605 2015-03-02 17:58 /tmp/idtest.hadoopqe.580215.29151.in
-rw-r--r--   3 hadoopqe hdfs        159 2015-03-02 17:58 /tmp/idtest.hadoopqe.580215.29151.pig

{code}

Is this the intended behavior? It is weird just to list files and not the directories if recursive is set to false.

If listStatus should be used instead can we make listFiles API deprecated?

Thanks!



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)