You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2015/08/10 13:49:41 UTC

svn commit: r1695032 - in /jackrabbit/oak/trunk/oak-pojosr/src: main/java/org/apache/jackrabbit/oak/run/osgi/ test/groovy/org/apache/jackrabbit/oak/run/osgi/ test/java/org/apache/jackrabbit/oak/run/osgi/

Author: chetanm
Date: Mon Aug 10 11:49:41 2015
New Revision: 1695032

URL: http://svn.apache.org/r1695032
Log:
OAK-3200 - Build Failure due to LuceneSupportTest and OakOSGiRepositoryFactoryTest

Current shutdown logic has a bug where the framework gets shutdown call before repository. This causes a race condition. As a fix now first the repository gets shutdown first and then framework is shutdown

Modified:
    jackrabbit/oak/trunk/oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java
    jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy
    jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java

Modified: jackrabbit/oak/trunk/oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java?rev=1695032&r1=1695031&r2=1695032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java (original)
+++ jackrabbit/oak/trunk/oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java Mon Aug 10 11:49:41 2015
@@ -387,13 +387,17 @@ public class OakOSGiRepositoryFactory im
             checkNotNull(obj, "Repository service is not available");
 
             final String name = method.getName();
-            if ("shutdown".equals(name)) {
-                tracker.shutdownRepository();
-            } else if ("getServiceRegistry".equals(name)){
+            if ("getServiceRegistry".equals(name)){
                 return tracker.getRegistry();
             }
 
-            return method.invoke(obj, args);
+            Object result = method.invoke(obj, args);
+
+            //If shutdown then close the framework *after* repository shutdown
+            if ("shutdown".equals(name)) {
+                tracker.shutdownRepository();
+            }
+            return result;
         }
 
         public void clearInitialReference() {

Modified: jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy?rev=1695032&r1=1695031&r2=1695032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy (original)
+++ jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy Mon Aug 10 11:49:41 2015
@@ -51,7 +51,6 @@ class LuceneSupportTest extends Abstract
         config[REPOSITORY_CONFIG_FILE] = createConfigValue("oak-base-config.json", "oak-tar-config.json")
     }
 
-    @Ignore
     @Test
     public void fullTextSearch() throws Exception {
         repository = repositoryFactory.getRepository(config)

Modified: jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java?rev=1695032&r1=1695031&r2=1695032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java (original)
+++ jackrabbit/oak/trunk/oak-pojosr/src/test/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactoryTest.java Mon Aug 10 11:49:41 2015
@@ -85,7 +85,6 @@ public class OakOSGiRepositoryFactoryTes
         copyConfig("common");
     }
 
-    @Ignore
     @Test
     public void testRepositoryTar() throws Exception {
         copyConfig("tar");