You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ns...@apache.org on 2011/10/11 04:14:18 UTC
svn commit: r1181502 -
/hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
Author: nspiegelberg
Date: Tue Oct 11 02:14:17 2011
New Revision: 1181502
URL: http://svn.apache.org/viewvc?rev=1181502&view=rev
Log:
Bulk import compaction exclude
Summary:
Add option to exclude bulk import files from minor compactions. This
will prevent major compaction storms from occuring during incremental
scrapes.
Test Plan:
- mvn clean install -DskipTests
Reviewed By: kannan
Reviewers: kannan
CC: kannan
Tasks:
Revert Plan:
OK
Differential Revision: 224573
Modified:
hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
Modified: hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java?rev=1181502&r1=1181501&r2=1181502&view=diff
==============================================================================
--- hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java (original)
+++ hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java Tue Oct 11 02:14:17 2011
@@ -869,6 +869,17 @@ public class Store implements HeapSize {
int start = 0;
double r = this.compactRatio;
+ // exclude bulk import files from minor compactions, if configured
+ if (conf.getBoolean("hbase.hstore.compaction.include.bulk", false)) {
+ filesToCompact.removeAll(Collections2.filter(filesToCompact,
+ new Predicate<StoreFile>() {
+ @Override
+ public boolean apply(StoreFile input) {
+ return input.isBulkLoadResult();
+ }
+ }));
+ }
+
/* TODO: add sorting + unit test back in when HBASE-2856 is fixed
//sort files by size to correct when normal skew is altered by bulk load
Collections.sort(filesToCompact, StoreFile.Comparators.FILE_SIZE);