jmx-dev Integrated: 8306806: JMX agent with JDP enabled won't start when PerfData is disabled

Kevin Walls kevinw at openjdk.org
Tue May 16 08:31:56 UTC 2023


On Thu, 11 May 2023 11:42:38 GMT, Kevin Walls <kevinw at openjdk.org> wrote:

> Java Discovery Protocol (perhaps a hidden feature, but maybe should be more widely known!) and -XX:-UsePerfData together cause a failure to startup.
> 
> PerfData is the mechanism for communicating the URL and other properties for remote management, so disabling PerfData clearly breaks this.  But there should be a clearer message, and not a fatal error.
> 
> e.g.
> $ java -XX:-UsePerfData  -Dcom.sun.management.jmxremote.autodiscovery=true -Dcom.sun.management.jmxremote.port=0 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false --version
> Warning: Exception thrown by the agent : JDP not starting, PerfData not available: Empty PerfData buffer
> java 21-internal 2023-09-19 LTS
> ...etc...
> 
> The use of PerfData is superior to the previous hard-coding of knowledge of the URL protocol and structure, and is required to communicate a dynamically assigned port (JDK-8167337).

This pull request has now been integrated.

Changeset: 0790f704
Author:    Kevin Walls <kevinw at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/0790f704fdc82d8152219b280a51c8c1aad7a358
Stats:     13 lines in 1 file changed: 6 ins; 0 del; 7 mod

8306806: JMX agent with JDP enabled won't start when PerfData is disabled

Reviewed-by: dholmes, cjplummer

-------------

PR: https://git.openjdk.org/jdk/pull/13928


More information about the jmx-dev mailing list