RFR : 8029347 : sun/rmi/runtime/Log/checkLogging/CheckLogging.java fails in nightly intermittently

Seán Coffey sean.coffey at oracle.com
Wed Dec 4 15:44:59 UTC 2013


Recent jdk8 builds seem to be more ambitious on the GC front. It turns 
out that we've no strong reference for the Logger being created in this 
testcase and it's collected before use.

Verified that test now passes.

suggested fix :

diff -r 28ca338366ff test/sun/rmi/runtime/Log/checkLogging/CheckLogging.java
--- a/test/sun/rmi/runtime/Log/checkLogging/CheckLogging.java	Mon Nov 25 20:22:23 2013 -0800
+++ b/test/sun/rmi/runtime/Log/checkLogging/CheckLogging.java	Wed Dec 04 15:22:42 2013 +0000
@@ -76,6 +76,7 @@
  public class CheckLogging {
      private static int REGISTRY_PORT = -1;
      private static String LOCATION;
+    private static Logger logger;
  
      private static final ByteArrayOutputStream clientCallOut =
          new ByteArrayOutputStream();
@@ -89,8 +90,8 @@
              System.err.println("set default stream");
              LogStream.setDefaultStream(new PrintStream(clientCallOut));
          } else {
-            Logger.getLogger("sun.rmi.client.call").
-                addHandler(new InternalStreamHandler(clientCallOut));
+            logger = Logger.getLogger("sun.rmi.client.call");
+            logger.addHandler(new InternalStreamHandler(clientCallOut));
          }
      }

regards,
Sean.



More information about the core-libs-dev mailing list