RFR(9): 8176533: REGRESSION: a java process is not recognized by jcmd/jinfo/jstack/jmap tool
Dmitry Samersoff
dmitry.samersoff at oracle.com
Wed Mar 15 18:14:42 UTC 2017
Robbin,
Looks good to me.
-Dmitry
On 2017-03-15 20:41, Robbin Ehn wrote:
> Hi all, please review:
>
> When starting the VM with agentlib and suspended, jcmd/jinfo/jstack/jmap
> don't work until a debugger have attach.
>
> There is an underlying issue with AttachProvider that don't list that VM
> even if it's attachable.
> That issue is present in JDK 8 (“jcmd -l” don’t list this process).
>
> This fix only fixes the regression by not validating the pid against
> available VirtualMachineDescriptors.
> One problem with not validating is that we will send SIGQUIT to that pid
> even if it’s not a java process, but it’s the same behavior as JDK 8.
>
> The regression was introduced by
> https://bugs.openjdk.java.net/browse/JDK-8156537
>
> VirtualMachineDescriptor was not easily create-able from just a string
> pid, you need an AttachProvider.
> I instead change so we use a collection of pids where applicable.
>
> Webrev: http://cr.openjdk.java.net/~rehn/8176533/webrev/
> Issue: https://bugs.openjdk.java.net/browse/JDK-8176533
>
> Passes jdk/test/sun/tools/ and internal test group.
> Manual tested the regression case.
>
> A new issue for the AttachProvider will be filed.
>
> Thanks
>
> /Robbin
--
Dmitry Samersoff
Oracle Java development team, Saint Petersburg, Russia
* I would love to change the world, but they won't give me the sources.
More information about the serviceability-dev
mailing list