Author: frm
Date: Tue Sep  6 14:29:23 2016
New Revision: 1759437

URL: http://svn.apache.org/viewvc?rev=1759437&view=rev
Log:
OAK-4744 - Always use a StatisticsProvider in standby tests

Contribution by Andrei Dulceanu.

Modified:
    
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/DataStoreTestBase.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalPrivateStoreIT.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalSharedStoreIT.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/FailoverIPRangeTest.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/TestBase.java

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/DataStoreTestBase.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/DataStoreTestBase.java?rev=1759437&r1=1759436&r2=1759437&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/DataStoreTestBase.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/DataStoreTestBase.java
 Tue Sep  6 14:29:23 2016
@@ -19,6 +19,7 @@
 
 package org.apache.jackrabbit.oak.segment.standby;
 
+import static java.util.concurrent.Executors.newSingleThreadScheduledExecutor;
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -29,6 +30,7 @@ import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.IOException;
 import java.util.Random;
+import java.util.concurrent.ScheduledExecutorService;
 
 import org.apache.jackrabbit.core.data.FileDataStore;
 import org.apache.jackrabbit.oak.api.Blob;
@@ -46,6 +48,7 @@ import org.apache.jackrabbit.oak.spi.com
 import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeStore;
+import org.apache.jackrabbit.oak.stats.DefaultStatisticsProvider;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -61,7 +64,7 @@ public class DataStoreTestBase extends T
         setUpServerAndClient();
     }
 
-    protected FileStore setupFileDataStore(File d, String path) throws 
Exception {
+    protected FileStore setupFileDataStore(File d, String path, 
ScheduledExecutorService executor) throws Exception {
         FileDataStore fds = new FileDataStore();
         fds.setMinRecordLength(4092);
         fds.init(path);
@@ -74,6 +77,7 @@ public class DataStoreTestBase extends T
                 .withStringCacheSize(0)
                 .withTemplateCacheSize(0)
                 .withBlobStore(blobStore)
+                .withStatisticsProvider(new 
DefaultStatisticsProvider(executor))
                 .build();
     }
 

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalPrivateStoreIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalPrivateStoreIT.java?rev=1759437&r1=1759436&r2=1759437&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalPrivateStoreIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalPrivateStoreIT.java
 Tue Sep  6 14:29:23 2016
@@ -22,6 +22,7 @@ import static org.apache.jackrabbit.oak.
 
 import java.io.File;
 import java.io.IOException;
+import java.util.concurrent.ScheduledExecutorService;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.jackrabbit.oak.segment.file.FileStore;
@@ -32,7 +33,7 @@ public class ExternalPrivateStoreIT exte
 
     private File primaryStore;
     private File secondaryStore;
-
+    
     @After
     public void after() {
         closeServerAndClient();
@@ -44,15 +45,15 @@ public class ExternalPrivateStoreIT exte
     }
 
     @Override
-    protected FileStore setupPrimary(File d) throws Exception {
+    protected FileStore setupPrimary(File d, ScheduledExecutorService 
primaryExecutor) throws Exception {
         primaryStore = createTmpTargetDir("ExternalStoreITPrimary");
-        return setupFileDataStore(d, primaryStore.getAbsolutePath());
+        return setupFileDataStore(d, primaryStore.getAbsolutePath(), 
primaryExecutor);
     }
 
     @Override
-    protected FileStore setupSecondary(File d) throws Exception {
+    protected FileStore setupSecondary(File d, ScheduledExecutorService 
secondaryExecutor) throws Exception {
         secondaryStore = createTmpTargetDir("ExternalStoreITSecondary");
-        return setupFileDataStore(d, secondaryStore.getAbsolutePath());
+        return setupFileDataStore(d, secondaryStore.getAbsolutePath(), 
secondaryExecutor);
     }
 
 }

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalSharedStoreIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalSharedStoreIT.java?rev=1759437&r1=1759436&r2=1759437&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalSharedStoreIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/ExternalSharedStoreIT.java
 Tue Sep  6 14:29:23 2016
@@ -22,6 +22,7 @@ import static org.apache.jackrabbit.oak.
 
 import java.io.File;
 import java.io.IOException;
+import java.util.concurrent.ScheduledExecutorService;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.jackrabbit.oak.segment.file.FileStore;
@@ -45,13 +46,13 @@ public class ExternalSharedStoreIT exten
     }
 
     @Override
-    protected FileStore setupPrimary(File d) throws Exception {
+    protected FileStore setupPrimary(File d, ScheduledExecutorService 
primaryExecutor) throws Exception {
         externalStore = createTmpTargetDir("ExternalCommonStoreIT");
-        return setupFileDataStore(d, externalStore.getAbsolutePath());
+        return setupFileDataStore(d, externalStore.getAbsolutePath(), 
primaryExecutor);
     }
 
     @Override
-    protected FileStore setupSecondary(File d) throws Exception {
-        return setupFileDataStore(d, externalStore.getAbsolutePath());
+    protected FileStore setupSecondary(File d, ScheduledExecutorService 
secondaryExecutor) throws Exception {
+        return setupFileDataStore(d, externalStore.getAbsolutePath(), 
secondaryExecutor);
     }
 }

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/FailoverIPRangeTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/FailoverIPRangeTest.java?rev=1759437&r1=1759436&r2=1759437&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/FailoverIPRangeTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/FailoverIPRangeTest.java
 Tue Sep  6 14:29:23 2016
@@ -111,6 +111,7 @@ public class FailoverIPRangeTest extends
     }
 
     @Test
+    @Ignore("OAK-4708")
     public void testFailoverCorrectListIPv6() throws Exception {
         if (!noDualStackSupport) {
             createTestWithConfig(new String[]{"foobar", "122-126", "::1", 
"126.0.0.1", "127.0.0.0-127.255.255.255"}, true);
@@ -123,6 +124,7 @@ public class FailoverIPRangeTest extends
     }
 
     @Test
+    @Ignore("OAK-4708")
     public void testFailoverCorrectListUseIPv6() throws Exception {
         if (!noDualStackSupport) {
             createTestWithConfig("::1", new String[]{"foobar","127-128", 
"0:0:0:0:0:0:0:1", "126.0.0.1", "127.0.0.0-127.255.255.255"}, true);

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/TestBase.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/TestBase.java?rev=1759437&r1=1759436&r2=1759437&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/TestBase.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/TestBase.java
 Tue Sep  6 14:29:23 2016
@@ -25,12 +25,16 @@ import static org.junit.Assume.assumeTru
 
 import java.io.File;
 import java.io.IOException;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.SystemUtils;
 import org.apache.jackrabbit.oak.commons.CIHelper;
+import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
 import org.apache.jackrabbit.oak.segment.file.FileStore;
 import org.apache.jackrabbit.oak.segment.standby.client.StandbyClient;
+import org.apache.jackrabbit.oak.stats.DefaultStatisticsProvider;
 import org.junit.BeforeClass;
 
 public class TestBase {
@@ -47,12 +51,15 @@ public class TestBase {
 
     File directoryS;
     FileStore storeS;
+    ScheduledExecutorService executorS;
 
     File directoryC;
     FileStore storeC;
+    ScheduledExecutorService executorC;
 
     File directoryC2;
     FileStore storeC2;
+    ScheduledExecutorService executorC2;
 
     /*
      Java 6 on Windows doesn't support dual IP stacks, so we will skip our IPv6
@@ -68,14 +75,16 @@ public class TestBase {
     public void setUpServerAndClient() throws Exception {
         // server
         directoryS = createTmpTargetDir(getClass().getSimpleName()+"-Server");
-        storeS = setupPrimary(directoryS);
+        executorS = Executors.newSingleThreadScheduledExecutor();
+        storeS = setupPrimary(directoryS, executorS);
 
         // client
         directoryC = createTmpTargetDir(getClass().getSimpleName()+"-Client");
-        storeC = setupSecondary(directoryC);
+        executorC = Executors.newSingleThreadScheduledExecutor();
+        storeC = setupSecondary(directoryC, executorC);
     }
 
-    private static FileStore newFileStore(File directory) throws Exception {
+    private static FileStore newFileStore(File directory, 
ScheduledExecutorService executor) throws Exception {
         return fileStoreBuilder(directory)
                 .withMaxFileSize(1)
                 .withMemoryMapping(false)
@@ -83,19 +92,20 @@ public class TestBase {
                 .withSegmentCacheSize(0)
                 .withStringCacheSize(0)
                 .withTemplateCacheSize(0)
+                .withStatisticsProvider(new 
DefaultStatisticsProvider(executor))
                 .build();
     }
 
-    protected FileStore setupPrimary(File directory) throws Exception {
-        return newFileStore(directory);
+    protected FileStore setupPrimary(File directory, ScheduledExecutorService 
executor) throws Exception {
+        return newFileStore(directory, executor);
     }
 
     protected FileStore getPrimary() {
         return storeS;
     }
 
-    protected FileStore setupSecondary(File directory) throws Exception {
-        return newFileStore(directoryC);
+    protected FileStore setupSecondary(File directory, 
ScheduledExecutorService executor) throws Exception {
+        return newFileStore(directoryC, executor);
     }
 
     protected FileStore getSecondary() {
@@ -106,7 +116,8 @@ public class TestBase {
         setUpServerAndClient();
 
         directoryC2 = 
createTmpTargetDir(getClass().getSimpleName()+"-Client2");
-        storeC2 = newFileStore(directoryC2);
+        executorC2 = Executors.newSingleThreadScheduledExecutor();
+        storeC2 = newFileStore(directoryC2, executorC2);
     }
 
     public void closeServerAndClient() {
@@ -116,6 +127,10 @@ public class TestBase {
             FileUtils.deleteDirectory(directoryS);
             FileUtils.deleteDirectory(directoryC);
         } catch (IOException e) {
+            // ignore
+        } finally {
+            new ExecutorCloser(executorS).close();
+            new ExecutorCloser(executorC).close();
         }
     }
 
@@ -125,6 +140,9 @@ public class TestBase {
         try {
             FileUtils.deleteDirectory(directoryC2);
         } catch (IOException e) {
+            // ignore
+        } finally {
+            new ExecutorCloser(executorC2).close();
         }
     }
 


Reply via email to