OpenJDK / amber / amber
changeset 21305:81e2a41dfed2
7140929: NotSerializableNotifTest.java fails intermittently
Reviewed-by: sjiang, alanb
author | jbachorik |
---|---|
date | Mon, 21 Oct 2013 13:57:11 +0200 |
parents | 7971ecf0fbed |
children | e56a970409e5 fba4c66089bb |
files | jdk/test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java |
diffstat | 1 files changed, 15 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/jdk/test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java Mon Oct 21 12:00:58 2013 +0200 +++ b/jdk/test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java Mon Oct 21 13:57:11 2013 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,8 +33,8 @@ // java imports // -import java.io.IOException; import java.net.MalformedURLException; +import java.util.Map; // JMX imports // @@ -44,7 +44,7 @@ import javax.management.remote.JMXServiceURL; public class NotSerializableNotifTest { - private static MBeanServer mbeanServer = MBeanServerFactory.createMBeanServer(); + private static final MBeanServer mbeanServer = MBeanServerFactory.createMBeanServer(); private static ObjectName emitter; private static int port = 2468; @@ -52,9 +52,19 @@ private static final int sentNotifs = 10; + private static double timeoutFactor = 1.0; + private static final double defaultTimeout = 10; + public static void main(String[] args) throws Exception { System.out.println(">>> Test to send a not serializable notification"); + String timeoutVal = System.getProperty("test.timeout.factor"); + if (timeoutVal != null) { + timeoutFactor = Double.parseDouble( + System.getProperty("test.timeout.factor") + ); + } + // IIOP fails on JDK1.4, see 5034318 final String v = System.getProperty("java.version"); float f = Float.parseFloat(v.substring(0, 3)); @@ -136,7 +146,8 @@ // waiting ... synchronized (listener) { - for (int i=0; i<10; i++) { + int top = (int)Math.ceil(timeoutFactor * defaultTimeout); + for (int i=0; i<top; i++) { if (listener.received() < sentNotifs) { listener.wait(1000); } else {