# HG changeset patch # User ddmitriev # Date 1454072601 -10800 # Node ID e78da4fa1a26a6fca0445307136811b4503a9df0 # Parent ec439aaca107cd1043c12a707e6cab24f42ced98 8147477: com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java is failing for the jdk9/hs snapshot control job Reviewed-by: gtriantafill, gziemski, dcubed, coleenp diff -r ec439aaca107 -r e78da4fa1a26 hotspot/test/runtime/logging/ExceptionsTest.java --- a/hotspot/test/runtime/logging/ExceptionsTest.java Fri Jan 29 05:32:12 2016 -0500 +++ b/hotspot/test/runtime/logging/ExceptionsTest.java Fri Jan 29 16:03:21 2016 +0300 @@ -23,7 +23,7 @@ /* * @test - * @bug 8141211 + * @bug 8141211 8147477 * @summary exceptions=info output should have an exception message for interpreter methods * @library /testlibrary * @modules java.base/sun.misc @@ -32,10 +32,17 @@ * @run driver ExceptionsTest */ +import java.io.File; +import java.util.Map; import jdk.test.lib.OutputAnalyzer; import jdk.test.lib.ProcessTools; public class ExceptionsTest { + static void updateEnvironment(ProcessBuilder pb, String environmentVariable, String value) { + Map env = pb.environment(); + env.put(environmentVariable, value); + } + static void analyzeOutputOn(ProcessBuilder pb) throws Exception { OutputAnalyzer output = new OutputAnalyzer(pb.start()); output.shouldContain(""); @@ -65,6 +72,19 @@ pb = ProcessTools.createJavaProcessBuilder("-XX:-TraceExceptions", InternalClass.class.getName()); analyzeOutputOff(pb); + + pb = ProcessTools.createJavaProcessBuilder(InternalClass.class.getName()); + updateEnvironment(pb, "_JAVA_OPTIONS", "-XX:+TraceExceptions"); + analyzeOutputOn(pb); + + pb = ProcessTools.createJavaProcessBuilder(InternalClass.class.getName()); + updateEnvironment(pb, "JAVA_TOOL_OPTIONS", "-Xlog:exceptions=info -XX:-TraceExceptions"); + analyzeOutputOff(pb); + + pb = ProcessTools.createJavaProcessBuilder("-XX:VMOptionsFile=" + System.getProperty("test.src", ".") + + File.separator + "ExceptionsTest_options_file", + InternalClass.class.getName()); + analyzeOutputOn(pb); } public static class InternalClass { diff -r ec439aaca107 -r e78da4fa1a26 hotspot/test/runtime/logging/ExceptionsTest_options_file --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/test/runtime/logging/ExceptionsTest_options_file Fri Jan 29 16:03:21 2016 +0300 @@ -0,0 +1,1 @@ +-XX:+TraceExceptions