You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by js...@apache.org on 2015/07/29 22:12:57 UTC

svn commit: r1693340 - in /sling/trunk: launchpad/integration-tests/pom.xml testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java testing/junit/remote/pom.xml

Author: jsedding
Date: Wed Jul 29 20:12:56 2015
New Revision: 1693340

URL: http://svn.apache.org/r1693340
Log:
SLING-4918 - Frequent failures of AuthenticationResponseCodeTest
 
 - improve synchronization on CyclicBufferAppender

Modified:
    sling/trunk/launchpad/integration-tests/pom.xml
    sling/trunk/testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java
    sling/trunk/testing/junit/remote/pom.xml

Modified: sling/trunk/launchpad/integration-tests/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/integration-tests/pom.xml?rev=1693340&r1=1693339&r2=1693340&view=diff
==============================================================================
--- sling/trunk/launchpad/integration-tests/pom.xml (original)
+++ sling/trunk/launchpad/integration-tests/pom.xml Wed Jul 29 20:12:56 2015
@@ -297,7 +297,7 @@
     <dependency>
       <groupId>org.apache.sling</groupId>
       <artifactId>org.apache.sling.junit.remote</artifactId>
-      <version>1.0.10</version>
+      <version>1.0.11-SNAPSHOT</version>
     </dependency>
     <dependency>
     	<groupId>org.codehaus.plexus</groupId>

Modified: sling/trunk/testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java?rev=1693340&r1=1693339&r2=1693340&view=diff
==============================================================================
--- sling/trunk/testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java (original)
+++ sling/trunk/testing/junit/core/src/main/java/org/apache/sling/junit/impl/servlet/TestLogServlet.java Wed Jul 29 20:12:56 2015
@@ -99,6 +99,8 @@ public class TestLogServlet extends Http
 
     private volatile Description currentTest;
 
+    private final Object appenderLock = new Object();
+
     @Activate
     protected void activate(BundleContext ctx, Map<String, ?> config) throws Exception {
         registerServlet(config);
@@ -154,26 +156,32 @@ public class TestLogServlet extends Http
     }
 
     private void resetAppender() {
-        synchronized (appender) {
-            appender.reset();
+        synchronized (appenderLock) {
+            if (appender.isStarted()) {
+                appender.reset();
+            }
         }
     }
 
     private void registerAppender(Map<String, ?> config) {
-        int size = PropertiesUtil.toInteger(config.get(LOG_BUFFER_SIZE), DEFAULT_SIZE);
-        appender = new CyclicBufferAppender<ILoggingEvent>();
-        appender.setMaxSize(size);
-        appender.setContext(getContext());
-        appender.setName("TestLogCollector");
-        appender.start();
-        rootLogger().addAppender(appender);
+        synchronized (appenderLock) {
+            int size = PropertiesUtil.toInteger(config.get(LOG_BUFFER_SIZE), DEFAULT_SIZE);
+            appender = new CyclicBufferAppender<ILoggingEvent>();
+            appender.setMaxSize(size);
+            appender.setContext(getContext());
+            appender.setName("TestLogCollector");
+            appender.start();
+            rootLogger().addAppender(appender);
+        }
     }
 
     private void deregisterAppender() {
         if (appender != null) {
-            rootLogger().detachAppender(appender);
-            appender.stop();
-            appender = null;
+            synchronized (appenderLock) {
+                rootLogger().detachAppender(appender);
+                appender.stop();
+                appender = null;
+            }
         }
     }
 

Modified: sling/trunk/testing/junit/remote/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/testing/junit/remote/pom.xml?rev=1693340&r1=1693339&r2=1693340&view=diff
==============================================================================
--- sling/trunk/testing/junit/remote/pom.xml (original)
+++ sling/trunk/testing/junit/remote/pom.xml Wed Jul 29 20:12:56 2015
@@ -74,7 +74,7 @@
         <dependency>
             <groupId>org.apache.sling</groupId>
             <artifactId>org.apache.sling.junit.core</artifactId>
-            <version>1.0.10</version>
+            <version>1.0.11-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>org.apache.felix</groupId>