You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2013/05/24 05:34:36 UTC
svn commit: r1485929 -
/hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java
Author: stack
Date: Fri May 24 03:34:35 2013
New Revision: 1485929
URL: http://svn.apache.org/r1485929
Log:
HBASE-8606 Meta scanner is not closed
Modified:
hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java
Modified: hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java?rev=1485929&r1=1485928&r2=1485929&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java (original)
+++ hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/MetaScanner.java Fri May 24 03:34:35 2013
@@ -127,6 +127,7 @@ public class MetaScanner {
HTable metaTable = new HTable(configuration, HConstants.META_TABLE_NAME);
// Calculate startrow for scan.
byte[] startRow;
+ ResultScanner scanner = null;
try {
if (row != null) {
// Scan starting at a particular row in a particular table
@@ -160,7 +161,7 @@ public class MetaScanner {
Bytes.toStringBinary(startRow) + " for max=" + rowUpperLimit + " with caching=" + rows);
}
// Run the scan
- ResultScanner scanner = metaTable.getScanner(scan);
+ scanner = metaTable.getScanner(scan);
Result result = null;
int processedRows = 0;
while ((result = scanner.next()) != null) {
@@ -171,8 +172,27 @@ public class MetaScanner {
if (processedRows >= rowUpperLimit) break;
}
} finally {
- if (visitor != null) visitor.close();
- if (metaTable != null) metaTable.close();
+ if (scanner != null) {
+ try {
+ scanner.close();
+ } catch (Throwable t) {
+ LOG.debug("Got exception in closing the result scanner", t);
+ }
+ }
+ if (visitor != null) {
+ try {
+ visitor.close();
+ } catch (Throwable t) {
+ LOG.debug("Got exception in closing the meta scanner visitor", t);
+ }
+ }
+ if (metaTable != null) {
+ try {
+ metaTable.close();
+ } catch (Throwable t) {
+ LOG.debug("Got exception in closing the meta table", t);
+ }
+ }
}
}