Repository: hbase
Updated Branches:
  refs/heads/0.94 aafed16af -> 6e6dc4bd8


HBASE-12657 The Region is not being split and far exceeds the desired maximum 
size. (Vladimir Rodionov)


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

Branch: refs/heads/0.94
Commit: 6e6dc4bd81695b7aa5ce283019d059c0570cb32e
Parents: aafed16
Author: Lars Hofhansl <[email protected]>
Authored: Thu Dec 11 13:23:20 2014 -0800
Committer: Lars Hofhansl <[email protected]>
Committed: Thu Dec 11 13:23:20 2014 -0800

----------------------------------------------------------------------
 src/main/java/org/apache/hadoop/hbase/regionserver/Store.java  | 6 ++++--
 .../apache/hadoop/hbase/regionserver/TestCompactSelection.java | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/6e6dc4bd/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java 
b/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
index 915777f..46b4e52 100644
--- a/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
+++ b/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
@@ -1598,8 +1598,10 @@ public class Store extends SchemaConfigured implements 
HeapSize {
         }
       } else if (compactSelection.getFilesToCompact().size() > 
this.maxFilesToCompact) {
         // all files included in this compaction, up to max
-        int pastMax = compactSelection.getFilesToCompact().size() - 
this.maxFilesToCompact;
-        compactSelection.getFilesToCompact().subList(0, pastMax).clear();
+        int excess = compactSelection.getFilesToCompact().size() - 
this.maxFilesToCompact;
+        LOG.debug("Too many admissible files. Excluding " + excess
+          + " files from compaction candidates");
+        candidates.subList(this.maxFilesToCompact, candidates.size()).clear();
       }
     }
     return compactSelection;

http://git-wip-us.apache.org/repos/asf/hbase/blob/6e6dc4bd/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactSelection.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactSelection.java 
b/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactSelection.java
index f996dda..b37053a 100644
--- 
a/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactSelection.java
+++ 
b/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompactSelection.java
@@ -265,7 +265,7 @@ public class TestCompactSelection extends TestCase {
     assertEquals(maxFiles,
         store.compactSelection(sfCreate(true, 
7,6,5,4,3,2,1)).getFilesToCompact().size());
     // reference compaction
-    compactEquals(sfCreate(true, 7, 6, 5, 4, 3, 2, 1), 5, 4, 3, 2, 1);
+    compactEquals(sfCreate(true, 7, 6, 5, 4, 3, 2, 1), 7, 6, 5, 4, 3);
     
     // empty case
     compactEquals(new ArrayList<StoreFile>() /* empty */);

Reply via email to