[ https://issues.apache.org/jira/browse/HBASE-11100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Enis Soztutar resolved HBASE-11100. ----------------------------------- Resolution: Duplicate Let me resolve this as duplicate of HBASE-9445. I'll provide an updated patch there. Thanks Vandana for reporting this. > IntegrationTestTableSnapshotInputFormat fails due to empty regions > ------------------------------------------------------------------ > > Key: HBASE-11100 > URL: https://issues.apache.org/jira/browse/HBASE-11100 > Project: HBase > Issue Type: Bug > Components: snapshots > Affects Versions: 0.98.1 > Reporter: Vandana Ayyalasomayajula > Assignee: Vandana Ayyalasomayajula > Priority: Minor > > When IntegrationTestTableSnapshotInputFormat is ran on real cluster with > command > {code} > hbase > org.apache.hadoop.hbase.mapreduce.IntegrationTestTableSnapshotInputFormat > {code} > it fails with the following exception: > {code} > Exception in thread "main" java.lang.AssertionError: expected:<32> but > was:<30> > at org.junit.Assert.fail(Assert.java:88) > at org.junit.Assert.failNotEquals(Assert.java:743) > at org.junit.Assert.assertEquals(Assert.java:118) > at org.junit.Assert.assertEquals(Assert.java:555) > at org.junit.Assert.assertEquals(Assert.java:542) > at > org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils.confirmSnapshotValid(SnapshotTestingUtils.java:244) > at > org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils.createSnapshotAndValidate(SnapshotTestingUtils.java:399) > at > org.apache.hadoop.hbase.mapreduce.TestTableSnapshotInputFormat.createTableAndSnapshot(TestTableSnapshotInputFormat.java:193) > at > org.apache.hadoop.hbase.mapreduce.TestTableSnapshotInputFormat.doTestWithMapReduce(TestTableSnapshotInputFormat.java:363) > at > org.apache.hadoop.hbase.mapreduce.IntegrationTestTableSnapshotInputFormat.runTestFromCommandLine(IntegrationTestTableSnapshotInputFormat.java:132) > at > org.apache.hadoop.hbase.IntegrationTestBase.doWork(IntegrationTestBase.java:79) > at > org.apache.hadoop.hbase.util.AbstractHBaseTool.run(AbstractHBaseTool.java:112) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) > at > org.apache.hadoop.hbase.mapreduce.IntegrationTestTableSnapshotInputFormat.main(IntegrationTestTableSnapshotInputFormat.java:151) > {code} > However when we specify less number of regions, say 6 like > {code} > hbase > org.apache.hadoop.hbase.mapreduce.IntegrationTestTableSnapshotInputFormat > -DIntegrationTestTableSnapshotInputFormat.numRegions=6 > {code} > the test passes. > The integration test internally uses HBaseTestingUtility's loadtable API to > create and load data into the regions. But that API does not seem to generate > enough data for 32 regions ( which is the default number of regions in the > integration test). As a result some regions end up with no keys. When the > SnapshotTestingUtils calls confirmSnapshotValid method to verify the snaphot > process, it looks for store files. When some region are empty they are not > counted and hence the test fails. -- This message was sent by Atlassian JIRA (v6.2#6252)