Author: reschke Date: Mon Oct 24 15:43:02 2016 New Revision: 1766423 URL: http://svn.apache.org/viewvc?rev=1766423&view=rev Log: OAK-4988: JournalGarbageCollector: re-order method signature
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalGarbageCollector.java jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCIT.java jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCTest.java jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalTest.java jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/JournalIT.java Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java Mon Oct 24 15:43:02 2016 @@ -877,7 +877,7 @@ public class DocumentNodeStoreService { @Override public void run() { - nodeStore.getJournalGarbageCollector().gc(journalGCMaxAge, journalGCBatchSize, TimeUnit.MILLISECONDS); + nodeStore.getJournalGarbageCollector().gc(journalGCMaxAge, TimeUnit.MILLISECONDS, journalGCBatchSize); } }; Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalGarbageCollector.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalGarbageCollector.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalGarbageCollector.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalGarbageCollector.java Mon Oct 24 15:43:02 2016 @@ -69,10 +69,11 @@ public class JournalGarbageCollector { * maxRevisionAge. * * @param maxRevisionAge entries older than this age will be removed - * @param unit the timeunit for maxRevisionAge + * @param unit the {@linkplain TimeUnit} for maxRevisionAge + * @param batchSize size of batch for removal * @return the number of entries that have been removed */ - public int gc(long maxRevisionAge, int batchSize, TimeUnit unit) { + public int gc(long maxRevisionAge, TimeUnit unit, int batchSize) { DocumentStore ds = ns.getDocumentStore(); Revision keep = ns.getCheckpoints().getOldestRevisionToKeep(); long maxRevisionAgeInMillis = unit.toMillis(maxRevisionAge); Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCIT.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCIT.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCIT.java (original) +++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCIT.java Mon Oct 24 15:43:02 2016 @@ -39,6 +39,6 @@ public class JournalGCIT extends Abstra .getNodeStore(); JournalGarbageCollector jgc = ns1.getJournalGarbageCollector(); - assertEquals(0, jgc.gc(1, 10, TimeUnit.HOURS)); + assertEquals(0, jgc.gc(1, TimeUnit.HOURS, 10)); } } Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCTest.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCTest.java (original) +++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalGCTest.java Mon Oct 24 15:43:02 2016 @@ -62,7 +62,7 @@ public class JournalGCTest { c.waitUntil(c.getTime() + TimeUnit.HOURS.toMillis(2)); // instruct journal collector to remove entries older than one hour - ns.getJournalGarbageCollector().gc(1, 10, TimeUnit.HOURS); + ns.getJournalGarbageCollector().gc(1, TimeUnit.HOURS, 10); // must not remove existing entry, because checkpoint is still valid entry = ns.getDocumentStore().find(JOURNAL, JournalEntry.asId(head)); @@ -70,7 +70,7 @@ public class JournalGCTest { ns.release(cp); - ns.getJournalGarbageCollector().gc(1, 10, TimeUnit.HOURS); + ns.getJournalGarbageCollector().gc(1, TimeUnit.HOURS, 10); // now journal GC can remove the entry entry = ns.getDocumentStore().find(JOURNAL, JournalEntry.asId(head)); assertNull(entry); @@ -91,7 +91,7 @@ public class JournalGCTest { ns.merge(builder, EmptyHook.INSTANCE, CommitInfo.EMPTY); ns.runBackgroundOperations(); - assertEquals(0, jgc.gc(1, 10, TimeUnit.HOURS)); + assertEquals(0, jgc.gc(1, TimeUnit.HOURS, 10)); // current time, but without the increment done by getTime() long now = c.getTime() - 1; @@ -105,7 +105,7 @@ public class JournalGCTest { // must collect all journal entries. the first created when // DocumentNodeStore was initialized and the second created // by the background update - assertEquals(2, jgc.gc(1, 10, TimeUnit.HOURS)); + assertEquals(2, jgc.gc(1, TimeUnit.HOURS, 10)); // current time, but without the increment done by getTime() now = c.getTime() - 1; Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalTest.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalTest.java (original) +++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/JournalTest.java Mon Oct 24 15:43:02 2016 @@ -186,15 +186,15 @@ public class JournalTest extends Abstrac JournalGarbageCollector gc = new JournalGarbageCollector(ns1); // first clean up Thread.sleep(100); // OAK-2979 : wait 100ms before doing the cleanup - gc.gc(1, 100, TimeUnit.MILLISECONDS); + gc.gc(1, TimeUnit.MILLISECONDS, 100); Thread.sleep(100); // sleep just quickly - assertEquals(0, gc.gc(1, 100, TimeUnit.DAYS)); - assertEquals(0, gc.gc(6, 100, TimeUnit.HOURS)); - assertEquals(0, gc.gc(1, 100, TimeUnit.HOURS)); - assertEquals(0, gc.gc(10, 100, TimeUnit.MINUTES)); - assertEquals(0, gc.gc(1, 100, TimeUnit.MINUTES)); - assertEquals(0, gc.gc(1, 100, TimeUnit.SECONDS)); - assertEquals(0, gc.gc(1, 100, TimeUnit.MILLISECONDS)); + assertEquals(0, gc.gc(1, TimeUnit.DAYS, 100)); + assertEquals(0, gc.gc(6, TimeUnit.HOURS, 100)); + assertEquals(0, gc.gc(1, TimeUnit.HOURS, 100)); + assertEquals(0, gc.gc(10, TimeUnit.MINUTES, 100)); + assertEquals(0, gc.gc(1, TimeUnit.MINUTES, 100)); + assertEquals(0, gc.gc(1, TimeUnit.SECONDS, 100)); + assertEquals(0, gc.gc(1, TimeUnit.MILLISECONDS, 100)); // create some entries that can be deleted thereupon mk1.commit("/", "+\"regular1\": {}", null, null); @@ -202,16 +202,16 @@ public class JournalTest extends Abstrac mk1.commit("/", "+\"regular3\": {}", null, null); mk1.commit("/regular2", "+\"regular4\": {}", null, null); Thread.sleep(100); // sleep 100millis - assertEquals(0, gc.gc(5, 100, TimeUnit.SECONDS)); - assertEquals(0, gc.gc(1, 100, TimeUnit.MILLISECONDS)); + assertEquals(0, gc.gc(5, TimeUnit.SECONDS, 100)); + assertEquals(0, gc.gc(1, TimeUnit.MILLISECONDS, 100)); ns1.runBackgroundOperations(); mk1.commit("/", "+\"regular5\": {}", null, null); ns1.runBackgroundOperations(); mk1.commit("/", "+\"regular6\": {}", null, null); ns1.runBackgroundOperations(); Thread.sleep(100); // sleep 100millis - assertEquals(0, gc.gc(5, 100, TimeUnit.SECONDS)); - assertEquals(3, gc.gc(1, 100, TimeUnit.MILLISECONDS)); + assertEquals(0, gc.gc(5, TimeUnit.SECONDS, 100)); + assertEquals(3, gc.gc(1, TimeUnit.MILLISECONDS, 100)); } @Test Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/JournalIT.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/JournalIT.java?rev=1766423&r1=1766422&r2=1766423&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/JournalIT.java (original) +++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/JournalIT.java Mon Oct 24 15:43:02 2016 @@ -197,7 +197,7 @@ public class JournalIT extends AbstractJ JournalGarbageCollector gc = new JournalGarbageCollector(ns1); clock.getTimeIncreasing(); clock.getTimeIncreasing(); - gc.gc(0, 100, TimeUnit.MILLISECONDS); // cleanup everything that might still be there + gc.gc(0, TimeUnit.MILLISECONDS, 100); // cleanup everything that might still be there // create entries as parametrized: for(int i=offset; i<size+offset; i++) { @@ -207,7 +207,7 @@ public class JournalIT extends AbstractJ ns1.runBackgroundOperations(); } Thread.sleep(100); // sleep 100millis - assertEquals(size, gc.gc(0, 100, TimeUnit.MILLISECONDS)); // should now be able to clean up everything + assertEquals(size, gc.gc(0, TimeUnit.MILLISECONDS, 100)); // should now be able to clean up everything } protected DocumentMK createMK(int clusterId, int asyncDelay) {