hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Yuan Jiang (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-13800) TestStore#testDeleteExpiredStoreFiles should create different data/log directory for each call
Date Thu, 28 May 2015 23:27:17 GMT
Stephen Yuan Jiang created HBASE-13800:

             Summary: TestStore#testDeleteExpiredStoreFiles should create different data/log
directory for each call
                 Key: HBASE-13800
                 URL: https://issues.apache.org/jira/browse/HBASE-13800
             Project: HBase
          Issue Type: Bug
          Components: test
    Affects Versions: 1.1.0, 2.0.0, 1.2.0
            Reporter: Stephen Yuan Jiang
            Assignee: Stephen Yuan Jiang
            Priority: Minor

When TestStore#init() was called twice in TestStore#testDeleteExpiredStoreFiles, it did not
use different base directory for each call (other tests in the same test suite do).  If the
first call did not release the handle of WAL files fast enough, the second init() call would

This is constantly seen in Windows environment:
java.io.IOException: Target WAL already exists within directory file:/C:/hbase/hbase-server/target/test-data/f39ecdde-1d04-4332-93c7-4c8df1e08e67/TestStoretestDeleteExpiredStoreFiles/WALs/testDeleteExpiredStoreFiles
	at org.apache.hadoop.hbase.regionserver.wal.FSHLog.<init>(FSHLog.java:525)
	at org.apache.hadoop.hbase.wal.DefaultWALProvider.init(DefaultWALProvider.java:97)
	at org.apache.hadoop.hbase.wal.WALFactory.getProvider(WALFactory.java:147)
	at org.apache.hadoop.hbase.wal.WALFactory.<init>(WALFactory.java:179)
	at org.apache.hadoop.hbase.regionserver.TestStore.init(TestStore.java:185)
	at org.apache.hadoop.hbase.regionserver.TestStore.init(TestStore.java:162)
	at org.apache.hadoop.hbase.regionserver.TestStore.testDeleteExpiredStoreFiles(TestStore.java:307)
	at org.apache.hadoop.hbase.regionserver.TestStore.testDeleteExpiredStoreFiles(TestStore.java:286)

The fix is trivial: just like other tests in the same test suite, use different base directory
for multiple init() calls in the same test.

This message was sent by Atlassian JIRA

View raw message