RFR: 8255934: JConsole 14 and greater fails to connect to older JVM
Chris Plummer
cjplummer at openjdk.java.net
Fri Nov 20 21:59:07 UTC 2020
On Mon, 16 Nov 2020 23:00:05 GMT, Alex Menkov <amenkov at openjdk.org> wrote:
> OperatingSystemMXBean was changed in jdk14 (see JDK-8226575):
> New methods getTotalMemorySize and getFreeMemorySize were added, old getTotalPhysicalMemorySize and getFreePhysicalMemorySize were deprecated.
>
> The fix adds fallbacks for the values (i.e. if new methods fail, jconsole calls old methods)
src/jdk.jconsole/share/classes/sun/tools/jconsole/SummaryTab.java line 268:
> 266: sunOSMBean::getTotalPhysicalMemorySize),
> 267: tryToGet(sunOSMBean::getFreeMemorySize,
> 268: sunOSMBean::getFreePhysicalMemorySize),
What happens if/when `getTotalPhysicalMemorySize()` and `getFreePhysicalMemorySize()` are removed. This code will fail to compile, right? I guess at that point the fix would be to try the new API, and if it throws an exception, then just use -1. In other words, there would be no way to get the value from older JVMs.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1243
More information about the serviceability-dev
mailing list