You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "nkeywal (JIRA)" <ji...@apache.org> on 2012/06/28 12:31:44 UTC

[jira] [Updated] (HBASE-6175) TestFSUtils flaky on hdfs getFileStatus method

     [ https://issues.apache.org/jira/browse/HBASE-6175?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nkeywal updated HBASE-6175:
---------------------------

    Attachment: 6175.v1.patch
    
> TestFSUtils flaky on hdfs getFileStatus method
> ----------------------------------------------
>
>                 Key: HBASE-6175
>                 URL: https://issues.apache.org/jira/browse/HBASE-6175
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 0.96.0
>            Reporter: nkeywal
>            Assignee: nkeywal
>            Priority: Trivial
>             Fix For: 0.96.0
>
>         Attachments: 6175.v1.patch
>
>
> This is a simplified version of a TestFSUtils issue: a sleep and the test works 100% of the time. No sleep and it becomes flaky. Root cause unknown. While the issue appears on the tests, the root cause could be an issue on real production system as well.
> {noformat}
> @Test
>  public void testFSUTils() throws Exception {
>    final String hosts[] = {"host1", "host2", "host3", "host4"};
>    Path testFile = new Path("/test1.txt");
>    HBaseTestingUtility htu = new HBaseTestingUtility();
>    try {
>      htu.startMiniDFSCluster(hosts).waitActive();
>      FileSystem fs = htu.getDFSCluster().getFileSystem();
>      for (int i = 0; i < 100; ++i) {
>        FSDataOutputStream out = fs.create(testFile);
>        byte[] data = new byte[1];
>        out.write(data, 0, 1);
>        out.close();
>        // Put a sleep here to make me work
>        //Thread.sleep(2000);
>        FileStatus status = fs.getFileStatus(testFile);
>        HDFSBlocksDistribution blocksDistribution =
>          FSUtils.computeHDFSBlocksDistribution(fs, status, 0, status.getLen());
>        assertEquals("Wrong number of hosts distributing blocks. at
> iteration "+i, 3,
>          blocksDistribution.getTopHosts().size());
>        fs.delete(testFile, true);
>      }
>    } finally {
>      htu.shutdownMiniDFSCluster();
>    }
>  }
> {noformat}

--
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