hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Hsieh (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (HBASE-9274) After HBASE-8408 applied, temporary test files are being left in /tmp/hbase-<user>
Date Wed, 21 Aug 2013 00:31:52 GMT

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

Jonathan Hsieh edited comment on HBASE-9274 at 8/21/13 12:30 AM:
-----------------------------------------------------------------

the difference is due to this:

before patch we ignore the conf which has /tmp/hbase-jon as hbase.rootdir value and used getTableArchivePath
which uses relative paths (which is under ./hbase/hbase-server/target/....):
{code}
  public static Path getStoreArchivePath(Configuration conf, HRegionInfo region, Path tabledir,
      byte[] family) {
    Path tableArchiveDir = getTableArchivePath(tabledir);
    return HStore.getStoreHomedir(tableArchiveDir, region, family);
  }
{code}

after patch we get the root directly from the conf, putting our data into /tmp/hbase-jon/.
{code}
  public static Path getStoreArchivePath(Configuration conf,
                                         HRegionInfo region,
                                         Path tabledir,
      byte[] family) throws IOException {
    TableName tableName =
        FSUtils.getTableName(tabledir);
    Path rootDir = FSUtils.getRootDir(conf);
    Path tableArchiveDir = getTableArchivePath(rootDir, tableName);
    return HStore.getStoreHomedir(tableArchiveDir, region, family);
  }
{code}

i think the fix will be to set the hbase.rootdir when the HBaseTestingUtility is constructed
so both point to the same place.
                
      was (Author: jmhsieh):
    the difference is due to this:

before patch we ignore the conf which has /tmp/hbase-jon as hbase.rootdir value and used getTableArchivePath
which uses relative paths (which is under ./hbase/target/....):
{code}
  public static Path getStoreArchivePath(Configuration conf, HRegionInfo region, Path tabledir,
      byte[] family) {
    Path tableArchiveDir = getTableArchivePath(tabledir);
    return HStore.getStoreHomedir(tableArchiveDir, region, family);
  }
{code}

after patch we get the root directly from the conf, putting our data into /tmp/hbase-jon/.
{code}
  public static Path getStoreArchivePath(Configuration conf,
                                         HRegionInfo region,
                                         Path tabledir,
      byte[] family) throws IOException {
    TableName tableName =
        FSUtils.getTableName(tabledir);
    Path rootDir = FSUtils.getRootDir(conf);
    Path tableArchiveDir = getTableArchivePath(rootDir, tableName);
    return HStore.getStoreHomedir(tableArchiveDir, region, family);
  }
{code}

i think the fix will be to set the hbase.rootdir when the HBaseTestingUtility is constructed
so both point to the same place.
                  
> After HBASE-8408 applied, temporary test files are being left in /tmp/hbase-<user>
> ----------------------------------------------------------------------------------
>
>                 Key: HBASE-9274
>                 URL: https://issues.apache.org/jira/browse/HBASE-9274
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 0.95.2
>            Reporter: Jonathan Hsieh
>            Assignee: Jonathan Hsieh
>             Fix For: 0.98.0, 0.95.3
>
>
> Some of our jenkins CI machines have been failing out with /tmp/hbase-<user>
> This can be shown by executing the following command before and after the namespaces
patch.
> {code}
> # several tests are dropping stuff in the archive dir, just pick one
> mvn clean test -Dtest=TestEncodedSeekers
> find /tmp/hbase-jon/hbase/
> {code}
> /tmp/hbase-jon after test run before patch applied
> {code}
> $ find /tmp/hbase-jon/
> /tmp/hbase-jon/
> /tmp/hbase-jon/local
> /tmp/hbase-jon/local/jars
> {code}
> after namespaces patch applied
> {code}
> /tmp/hbase-jon/
> /tmp/hbase-jon/local
> /tmp/hbase-jon/local/jars
> /tmp/hbase-jon/hbase
> /tmp/hbase-jon/hbase/.archive
> /tmp/hbase-jon/hbase/.archive/.data
> /tmp/hbase-jon/hbase/.archive/.data/default
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable/c6ec51dca2a9fe4c2279006345d62b35
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable/c6ec51dca2a9fe4c2279006345d62b35/encodedSeekersCF
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable/c6ec51dca2a9fe4c2279006345d62b35/encodedSeekersCF/8e76a87806b94483851158366f7d5c17
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable/c6ec51dca2a9fe4c2279006345d62b35/encodedSeekersCF/494c07dbf08940749696bb0f9278401e
> /tmp/hbase-jon/hbase/.archive/.data/default/encodedSeekersTable/c6ec51dca2a9fe4c2279006345d62b35/encodedSeekersCF/.8e76a87806b94483851158366f7d5c1
> 7.crc     
> ....
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message