You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Jakob Homan (JIRA)" <ji...@apache.org> on 2015/05/20 23:51:01 UTC

[jira] [Created] (HADOOP-12009) FileSystemContractBaseTest:testListStatus should not assume listStatus returns sorted results

Jakob Homan created HADOOP-12009:
------------------------------------

             Summary: FileSystemContractBaseTest:testListStatus should not assume listStatus returns sorted results
                 Key: HADOOP-12009
                 URL: https://issues.apache.org/jira/browse/HADOOP-12009
             Project: Hadoop Common
          Issue Type: Improvement
          Components: test
            Reporter: Jakob Homan
            Priority: Minor


FileSystem.listStatus does not guarantee that implementations will return sorted entries:
{code}  /**
   * List the statuses of the files/directories in the given path if the path is
   * a directory.
   * 
   * @param f given path
   * @return the statuses of the files/directories in the given patch
   * @throws FileNotFoundException when the path does not exist;
   *         IOException see specific implementation
   */
  public abstract FileStatus[] listStatus(Path f) throws FileNotFoundException, 
                                                         IOException;{code}
However, FileSystemContractBaseTest, expects the elements to come back sorted:
{code}    Path[] testDirs = { path("/test/hadoop/a"),
                        path("/test/hadoop/b"),
                        path("/test/hadoop/c/1"), };
   
    // ...

    paths = fs.listStatus(path("/test/hadoop"));
    assertEquals(3, paths.length);
    assertEquals(path("/test/hadoop/a"), paths[0].getPath());
    assertEquals(path("/test/hadoop/b"), paths[1].getPath());
    assertEquals(path("/test/hadoop/c"), paths[2].getPath());{code}
We should pass this test as long as all the paths are there, regardless of their ordering.



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