RFR: 8234808: jdb quoted option parsing broken

Chris Plummer cjplummer at openjdk.java.net
Fri Sep 18 20:43:58 UTC 2020


On Wed, 16 Sep 2020 19:47:02 GMT, Alex Menkov <amenkov at openjdk.org> wrote:

> Migrating this review from the mailing list into a pull request.
> 
> Some background:
> when jdb launches debuggee process it passes java options from "options" value for CommandLineLaunch connector and
> forward options specified before command.
> The fix solves several discovered issues:
> - proper handling of java options with spaces
> - if both way are used to specify java options, forwarded options override options from "options" value
> 
> VMConnection class implements tricky logic for "options" field parsing for JFR needs (handling of single and double
> quotes). I decided to keep it as is to avoid massive test failures with JFR (there is no test coverage for this
> functionality and I'm not sure I understand all requirements).

Your changes look good, but I don't fully understand your comment about the JFR needs. I do see your special test case:

106                 "com.sun.jdi.CommandLineLaunch:vmexec=java,options='-client' '-XX:+PrintVMOptions'"
107                         + " '-XX:StartFlightRecording=dumponexit=true,maxsize=500M'
'-XX:FlightRecorderOptions=repository=jfrrep'" 108                         + ",main=" + targ)

So I assume you are talking about special handling for the above example, but is this really special handling of JFR
optins, or just special handling of options that contain suboptions.

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

PR: https://git.openjdk.java.net/jdk/pull/211


More information about the serviceability-dev mailing list