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 2011/06/09 05:37:57 UTC

svn commit: r1133644 - in /hbase/branches/0.90: CHANGES.txt src/main/java/org/apache/hadoop/hbase/regionserver/Store.java

Author: stack
Date: Thu Jun  9 03:37:56 2011
New Revision: 1133644

URL: http://svn.apache.org/viewvc?rev=1133644&view=rev
Log:
HBASE-3723 Major compact should be done when there is only one storefile and some keyvalue is outdated

Modified:
    hbase/branches/0.90/CHANGES.txt
    hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java

Modified: hbase/branches/0.90/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1133644&r1=1133643&r2=1133644&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Thu Jun  9 03:37:56 2011
@@ -24,6 +24,8 @@ Release 0.90.4 - Unreleased
                (Ted Yu)
    HBASE-3946  The splitted region can be online again while the standby
                hmaster becomes the active one (Jieshan Bean)
+   HBASE-3723  Major compact should be done when there is only one storefile
+               and some keyvalue is outdated (Zhou Shuaifeng)
 
   IMPROVEMENT
    HBASE-3882  hbase-config.sh needs to be updated so it can auto-detects the

Modified: hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java?rev=1133644&r1=1133643&r2=1133644&view=diff
==============================================================================
--- hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java (original)
+++ hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java Thu Jun  9 03:37:56 2011
@@ -841,6 +841,12 @@ public class Store implements HeapSize {
                 oldest + "ms is < ttl=" + this.ttl);
           }
         }
+        if(this.ttl != HConstants.FOREVER && oldest > this.ttl){
+            LOG.debug("Major compaction triggered on store " + this.storeNameStr +
+                ", because keyvalues outdated; time since last major compaction " + 
+                (now - lowTimestamp) + "ms");
+        	result = true;
+        }
       } else {
         if (LOG.isDebugEnabled()) {
           LOG.debug("Major compaction triggered on store " + this.storeNameStr +