RFR(9): 8176533: REGRESSION: a java process is not recognized by jcmd/jinfo/jstack/jmap tool

Robbin Ehn robbin.ehn at oracle.com
Thu Mar 16 06:11:36 UTC 2017


Hi David,

On 03/15/2017 10:23 PM, David Holmes wrote:
> On 16/03/2017 4:14 AM, serguei.spitsyn at oracle.com wrote:
>> Hi Robbin,
>>
>> Nice fix.
>> Thank you for taking care about this issue so quickly!
>>
>> One minor comment below.
>>
>> http://cr.openjdk.java.net/~rehn/8176533/webrev/src/jdk.jcmd/share/classes/sun/tools/common/ProcessArgumentMatcher.java.udiff.html
>>
>>
>> A typo in the comment: debugge-suspened => debuggee-suspened
>
> typo: suspened -> suspended

:)

/Robbin

>
> Not a review :)
>
> David
>
>>
>>
>> On 3/15/17 10: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.
>>
>> I've filed this one:
>>   https://bugs.openjdk.java.net/browse/JDK-8176828
>>    jtools do not list VM process launched with the debugger option
>> suspend=y
>>
>> Feel free to update it if necessary.
>>
>> Thanks,
>> Serguei
>>
>>>
>>> Thanks
>>>
>>> /Robbin
>>


More information about the hotspot-runtime-dev mailing list