RFR(S): 8185803: JdbExprTest.sh fails in JDK10-hs nightly due to "Name unknown: java.lang.Long.MAX_VALUE "
Chris Plummer
chris.plummer at oracle.com
Fri May 11 00:01:03 UTC 2018
Hello,
Please review the following simple fix for 8185803:
https://bugs.openjdk.java.net/browse/JDK-8185803
http://cr.openjdk.java.net/~cjplummer/8185803/webrev.00/
Although this bug has been around for nearly a year, it used to only
fail on Windows. After the push for JDK-8198426 last month, it started
to fail on every run. The test runs jdb, stops at a breakpoint in the
debugee, and the issues the following command:
print java.lang.Long.MAX_VALUE
And the response back is:
com.sun.tools.example.debug.expr.ParseException: Name unknown:
java.lang.Long.MAX_VALUE
java.lang.Long.MAX_VALUE = null
The issue is that Long has not been initialized (it has been loaded), so
the java.lang.Long.MAX_VALUE symbol is not valid. This became the case
on every run after JDK-8198426 because it removed a bunch of java code
that executed at startup, and this code must have been causing Long to
get initialized. I'm not sure why it used to only fail on Windows before
JDK-8198426, but it passes now on all platforms with my fix, which is to
add a reference to java.lang.Long in the debugee so the Long will always
be initialized.
thanks,
Chris
More information about the serviceability-dev
mailing list