You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ga...@apache.org on 2011/04/10 09:57:16 UTC
svn commit: r1090747 - in /hbase/branches/0.90: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/client/HTablePool.java
Author: garyh
Date: Sun Apr 10 07:57:16 2011
New Revision: 1090747
URL: http://svn.apache.org/viewvc?rev=1090747&view=rev
Log:
HBASE-3750 HTable.putTable() should release resources for discarded tables
Modified:
hbase/branches/0.90/CHANGES.txt
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java
Modified: hbase/branches/0.90/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1090747&r1=1090746&r2=1090747&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Sun Apr 10 07:57:16 2011
@@ -12,6 +12,8 @@ Release 0.90.3 - Unreleased
HBASE-3740 hbck doesn't reset the number of errors when retrying
HBASE-3744 createTable blocks until all regions are out of transition
(Ted Yu via Stack)
+ HBASE-3750 HTablePool.putTable() should call releaseHTableInterface()
+ for discarded tables (Ted Yu via garyh)
IMPROVEMENT
HBASE-3717 deprecate HTable isTableEnabled() methods in favor of HBaseAdmin
Modified: hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java?rev=1090747&r1=1090746&r2=1090747&view=diff
==============================================================================
--- hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java (original)
+++ hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HTablePool.java Sun Apr 10 07:57:16 2011
@@ -120,7 +120,11 @@ public class HTablePool {
public void putTable(HTableInterface table) {
LinkedList<HTableInterface> queue = tables.get(Bytes.toString(table.getTableName()));
synchronized(queue) {
- if(queue.size() >= maxSize) return;
+ if(queue.size() >= maxSize) {
+ // release table instance since we're not reusing it
+ this.tableFactory.releaseHTableInterface(table);
+ return;
+ }
queue.add(table);
}
}