Ah, better! Thank you Remko.

Gary

<div>-------- Original message --------</div><div>From: [email protected] 
</div><div>Date:05/17/2014  07:34  (GMT-05:00) </div><div>To: 
[email protected] </div><div>Subject: svn commit: r1595444 -
  
/logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java
 </div><div>
</div>Author: rpopma
Date: Sat May 17 11:34:21 2014
New Revision: 1595444

URL: http://svn.apache.org/r1595444
Log:
changed unconditional 4-second sleep while waiting for result to many short 
sleeps with break when done. This reduced the project build time from 8 minutes 
to 6.5 minutes on my laptop.

Modified:
    
logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java

Modified: 
logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java
URL: 
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java?rev=1595444&r1=1595443&r2=1595444&view=diff
==============================================================================
--- 
logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java
 (original)
+++ 
logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/net/server/AbstractSocketServerTest.java
 Sat May 17 11:34:21 2014
@@ -190,11 +190,18 @@ public abstract class AbstractSocketServ
         for (final String message : messages) {
             rootLogger.debug(message);
         }
-        try {
-            // Let the server-side read the messages.
-            Thread.sleep(4000);
-        } catch (Exception e) {
-            e.printStackTrace();
+        final int MAX_TRIES = 100;
+        for (int i = 0; i < MAX_TRIES; i++) {
+            if (listAppender.getEvents().size() < messages.length) {
+                try {
+                    // Let the server-side read the messages.
+                    Thread.sleep(40);
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+            } else {
+                break;
+            }
         }
         final List<LogEvent> events = listAppender.getEvents();
         assertNotNull("No event retrieved", events);


Reply via email to