You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2014/07/01 18:31:37 UTC

git commit: HBASE-11439 StripeCompaction may not obey the OffPeak rule to compaction (Victor Xu)

Repository: hbase
Updated Branches:
  refs/heads/branch-1 a02716fb4 -> b59d93159


HBASE-11439 StripeCompaction may not obey the OffPeak rule to compaction (Victor Xu)


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/b59d9315
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/b59d9315
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/b59d9315

Branch: refs/heads/branch-1
Commit: b59d9315900345fcba5c5e52758d975d386400a7
Parents: a02716f
Author: Ted Yu <te...@apache.org>
Authored: Tue Jul 1 16:31:24 2014 +0000
Committer: Ted Yu <te...@apache.org>
Committed: Tue Jul 1 16:31:24 2014 +0000

----------------------------------------------------------------------
 .../compactions/StripeCompactionPolicy.java         |  2 +-
 .../compactions/TestStripeCompactionPolicy.java     | 16 ++++++++++++++++
 2 files changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/b59d9315/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.java
index 7189d21..22697e9 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.java
@@ -266,7 +266,7 @@ public class StripeCompactionPolicy extends CompactionPolicy {
     int minFilesLocal = Math.max(
         allFilesOnly ? sfs.size() : 0, this.config.getStripeCompactMinFiles());
     int maxFilesLocal = Math.max(this.config.getStripeCompactMaxFiles(), minFilesLocal);
-    return stripePolicy.applyCompactionPolicy(sfs, isOffpeak, false, minFilesLocal, maxFilesLocal);
+    return stripePolicy.applyCompactionPolicy(sfs, false, isOffpeak, minFilesLocal, maxFilesLocal);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/hbase/blob/b59d9315/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java
index 64a4147..a4f8f5b 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/TestStripeCompactionPolicy.java
@@ -278,6 +278,22 @@ public class TestStripeCompactionPolicy {
   }
 
   @Test
+  public void testSplitOffStripeOffPeak() throws Exception {
+    // for HBASE-11439
+    Configuration conf = HBaseConfiguration.create();
+    conf.setInt(StripeStoreConfig.MIN_FILES_KEY, 2);
+    // Select the last 2 files.
+    StripeCompactionPolicy.StripeInformationProvider si =
+        createStripesWithSizes(0, 0, new Long[] { defaultSplitSize - 2, 1L, 1L });
+    assertEquals(2, createPolicy(conf).selectCompaction(si, al(), false).getRequest().getFiles()
+        .size());
+    // Make sure everything is eligible in offpeak.
+    conf.setFloat("hbase.hstore.compaction.ratio.offpeak", 500f);
+    assertEquals(3, createPolicy(conf).selectCompaction(si, al(), true).getRequest().getFiles()
+        .size());
+  }
+
+  @Test
   public void testSplitOffStripeDropDeletes() throws Exception {
     Configuration conf = HBaseConfiguration.create();
     conf.setInt(StripeStoreConfig.MIN_FILES_KEY, 2);