hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jakob Homan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-10798) globStatus() does not return sorted list of files
Date Thu, 18 Jun 2015 04:22:01 GMT

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

Jakob Homan commented on HADOOP-10798:
--------------------------------------

Right now this JIRA is limited to correcting an incorrect javadoc.  If we add in changing
the output of a reasonably distant command (specifically the shell of liststatus, not just
the API of FileSystem.listStatus), that's a pretty big change relative to the original JIRA.
 I'd be fine with having that discussion (to sort the shell output of ls) in another JIRA.
 Since this additional change would potentially affect current behavior for non-HDFS FileSystems,
as you say, it should probably be considered an incompatible change, which again is beyond
the scope of the current JIRA.

Can we just restrict this one to the API correction and open another to discuss adding sorting?

> globStatus() does not return sorted list of files
> -------------------------------------------------
>
>                 Key: HADOOP-10798
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10798
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 2.3.0
>            Reporter: Felix Borchers
>            Assignee: Colin Patrick McCabe
>            Priority: Minor
>              Labels: BB2015-05-TBR
>         Attachments: HADOOP-10798.001.patch
>
>
> (FileSystem) globStatus() does not return a sorted file list anymore.
> But the API says: " ... Results are sorted by their names."
> Seems to be lost, when the Globber Object was introduced. Can't find a sort in actual
code.
> code to check this behavior:
> {code}
>         Configuration conf = new Configuration();
>         FileSystem fs = FileSystem.get(conf);
>         Path path = new Path("/tmp/" + System.currentTimeMillis());
>         fs.mkdirs(path);
>         fs.deleteOnExit(path);
>         fs.createNewFile(new Path(path, "2"));
>         fs.createNewFile(new Path(path, "3"));
>         fs.createNewFile(new Path(path, "1"));
>         FileStatus[] status = fs.globStatus(new Path(path, "*"));
>         Collection list = new ArrayList();
>         for (FileStatus f: status) {
>             list.add(f.getPath().toString());
>             //System.out.println(f.getPath().toString());
>         }
>         boolean sorted = Ordering.natural().isOrdered(list);
>         Assert.assertTrue(sorted);
> {code}



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

Mime
View raw message