diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.java index f94dac9..c91e7b0 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.java @@ -87,6 +87,7 @@ public class VerifyReplication extends Configured implements Tool { private ResultScanner replicatedScanner; private Result currentCompareRowInPeerTable; + private Table replicatedTable; /** * Map method that compares every scanned row with the equivalent from @@ -127,8 +128,7 @@ public class VerifyReplication extends Configured implements Tool { ZKUtil.applyClusterKeyToConf(peerConf, zkClusterKey); TableName tableName = TableName.valueOf(conf.get(NAME + ".tableName")); - // TODO: THis HTable doesn't get closed. Fix! - Table replicatedTable = new HTable(peerConf, tableName); + replicatedTable = new HTable(peerConf, tableName); scan.setStartRow(value.getRow()); scan.setStopRow(tableSplit.getEndRow()); replicatedScanner = replicatedTable.getScanner(scan); @@ -189,6 +189,14 @@ public class VerifyReplication extends Configured implements Tool { replicatedScanner = null; } } + if (replicatedTable != null) { + TableName tableName = replicatedTable.getName(); + try { + replicatedTable.close(); + } catch (IOException ioe) { + LOG.warn("Exception closing " + tableName, ioe); + } + } } }