You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by se...@apache.org on 2013/02/28 04:02:53 UTC
svn commit: r1451079 [2/2] - in /hbase/branches/0.95/hbase-server/src:
main/java/org/apache/hadoop/hbase/coprocessor/
main/java/org/apache/hadoop/hbase/regionserver/
main/java/org/apache/hadoop/hbase/regionserver/compactions/
test/java/org/apache/hadoo...
Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java?rev=1451079&r1=1451078&r2=1451079&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java (original)
+++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestCompaction.java Thu Feb 28 03:02:52 2013
@@ -594,7 +594,7 @@ public class TestCompaction extends HBas
HStore store = (HStore) r.getStore(COLUMN_FAMILY);
Collection<StoreFile> storeFiles = store.getStorefiles();
- Compactor tool = store.compactor;
+ Compactor tool = store.storeEngine.getCompactor();
List<Path> newFiles = tool.compactForTesting(storeFiles, false);
@@ -611,7 +611,7 @@ public class TestCompaction extends HBas
stream.close();
try {
- store.completeCompaction(storeFiles, origPath);
+ ((HStore)store).moveFileIntoPlace(origPath);
} catch (Exception e) {
// The complete compaction should fail and the corrupt file should remain
// in the 'tmp' directory;
@@ -635,7 +635,7 @@ public class TestCompaction extends HBas
}
store.triggerMajorCompaction();
- CompactionRequest request = store.requestCompaction(Store.NO_PRIORITY, null);
+ CompactionRequest request = store.requestCompaction(Store.NO_PRIORITY, null).getRequest();
assertNotNull("Expected to receive a compaction request", request);
assertEquals(
"System-requested major compaction should not occur if there are too many store files",
@@ -653,7 +653,7 @@ public class TestCompaction extends HBas
createStoreFile(r);
}
store.triggerMajorCompaction();
- CompactionRequest request = store.requestCompaction(Store.PRIORITY_USER, null);
+ CompactionRequest request = store.requestCompaction(Store.PRIORITY_USER, null).getRequest();
assertNotNull("Expected to receive a compaction request", request);
assertEquals(
"User-requested major compaction should always occur, even if there are too many store files",
@@ -680,7 +680,7 @@ public class TestCompaction extends HBas
}
CountDownLatch latch = new CountDownLatch(1);
- TrackableCompactionRequest request = new TrackableCompactionRequest(r, (HStore) store, latch);
+ TrackableCompactionRequest request = new TrackableCompactionRequest(latch);
thread.requestCompaction(r, store, "test custom comapction", Store.PRIORITY_USER, request);
// wait for the latch to complete.
latch.await();
@@ -698,16 +698,15 @@ public class TestCompaction extends HBas
* Constructor for a custom compaction. Uses the setXXX methods to update the state of the
* compaction before being used.
*/
- public TrackableCompactionRequest(HRegion region, HStore store, CountDownLatch finished) {
- super(region, store, Store.PRIORITY_USER);
+ public TrackableCompactionRequest(CountDownLatch finished) {
+ super();
this.done = finished;
}
@Override
- public void run() {
- super.run();
+ public void afterExecute() {
+ super.afterExecute();
this.done.countDown();
}
}
-
}
Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.java?rev=1451079&r1=1451078&r2=1451079&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.java (original)
+++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestDefaultCompactSelection.java Thu Feb 28 03:02:52 2013
@@ -39,7 +39,8 @@ import org.apache.hadoop.hbase.HTableDes
import org.apache.hadoop.hbase.SmallTests;
import org.apache.hadoop.hbase.io.hfile.CacheConfig;
import org.apache.hadoop.hbase.io.hfile.NoOpDataBlockEncoder;
-import org.apache.hadoop.hbase.regionserver.compactions.CompactSelection;
+import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest;
+import org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactionPolicy;
import org.apache.hadoop.hbase.regionserver.wal.HLog;
import org.apache.hadoop.hbase.regionserver.wal.HLogFactory;
import org.apache.hadoop.hbase.util.Bytes;
@@ -234,11 +235,11 @@ public class TestDefaultCompactSelection
throws IOException {
store.forceMajor = forcemajor;
//Test Default compactions
- CompactSelection result = store.compactionPolicy
- .selectCompaction(candidates, false, isOffPeak, forcemajor);
- List<StoreFile> actual = result.getFilesToCompact();
+ CompactionRequest result = ((DefaultCompactionPolicy)store.compactionPolicy).selectCompaction(
+ candidates, new ArrayList<StoreFile>(), false, isOffPeak, forcemajor);
+ List<StoreFile> actual = new ArrayList<StoreFile>(result.getFiles());
if (isOffPeak && !forcemajor) {
- assertTrue(result.isOffPeakCompaction());
+ assertTrue(result.isOffPeak());
}
assertEquals(Arrays.toString(expected), Arrays.toString(getSizes(actual)));
store.forceMajor = false;
Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java?rev=1451079&r1=1451078&r2=1451079&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java (original)
+++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java Thu Feb 28 03:02:52 2013
@@ -56,11 +56,11 @@ import org.apache.hadoop.hbase.io.encodi
import org.apache.hadoop.hbase.io.hfile.CacheConfig;
import org.apache.hadoop.hbase.io.hfile.HFile;
import org.apache.hadoop.hbase.monitoring.MonitoredTask;
+import org.apache.hadoop.hbase.regionserver.compactions.CompactionContext;
import org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest;
import org.apache.hadoop.hbase.regionserver.wal.HLog;
import org.apache.hadoop.hbase.regionserver.wal.HLogFactory;
import org.apache.hadoop.hbase.security.User;
-import org.apache.hadoop.hbase.util.BloomFilterFactory;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
import org.apache.hadoop.hbase.util.EnvironmentEdgeManagerTestHelper;
@@ -224,17 +224,19 @@ public class TestStore extends TestCase
// by the compaction.
for (int i = 1; i <= storeFileNum; i++) {
// verify the expired store file.
- CompactionRequest cr = this.store.requestCompaction();
+ CompactionContext compaction = this.store.requestCompaction();
+ CompactionRequest cr = compaction.getRequest();
// the first is expired normally.
// If not the first compaction, there is another empty store file,
+ List<StoreFile> files = new ArrayList<StoreFile>(cr.getFiles());
assertEquals(Math.min(i, 2), cr.getFiles().size());
- for (int j = 0; j < cr.getFiles().size(); j++) {
- assertTrue(cr.getFiles().get(j).getReader().getMaxTimestamp() < (edge
+ for (int j = 0; j < files.size(); j++) {
+ assertTrue(files.get(j).getReader().getMaxTimestamp() < (edge
.currentTimeMillis() - this.store.getScanInfo().getTtl()));
}
// Verify that the expired store file is compacted to an empty store file.
// Default compaction policy creates just one and only one compacted file.
- StoreFile compactedFile = this.store.compact(cr).get(0);
+ StoreFile compactedFile = this.store.compact(compaction).get(0);
// It is an empty store file.
assertEquals(0, compactedFile.getReader().getEntries());
Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.java?rev=1451079&r1=1451078&r2=1451079&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.java (original)
+++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/compactions/PerfTestCompactionPolicies.java Thu Feb 28 03:02:52 2013
@@ -53,7 +53,7 @@ public class PerfTestCompactionPolicies
static final Log LOG = LogFactory.getLog(PerfTestCompactionPolicies.class);
- private final CompactionPolicy cp;
+ private final DefaultCompactionPolicy cp;
private final int max;
private final int min;
private final float ratio;
@@ -169,10 +169,11 @@ public class PerfTestCompactionPolicies
private List<StoreFile> runIteration(List<StoreFile> startingStoreFiles) throws IOException {
List<StoreFile> storeFiles = new ArrayList<StoreFile>(startingStoreFiles);
- CompactSelection sel = cp.selectCompaction(storeFiles, false, false, false);
+ CompactionRequest req = cp.selectCompaction(
+ storeFiles, new ArrayList<StoreFile>(), false, false, false);
int newFileSize = 0;
- List<StoreFile> filesToCompact = sel.getFilesToCompact();
+ Collection<StoreFile> filesToCompact = req.getFiles();
if (!filesToCompact.isEmpty()) {