[External] : Re: bug: breakpoints in in an anonymous class method executed on a virtual thread callstack are skipped
Ben Berman
benjamin.s.berman at gmail.com
Tue Sep 19 04:51:51 UTC 2023
will do! thank you so much
On Mon, Sep 18, 2023 at 5:16 PM Chris Plummer <chris.plummer at oracle.com>
wrote:
> I'll need thorough step-by-step instructions for Vlad's test case,
> including installation of all needed components.
>
> Can you at least verify if you are still seeing the following, and if so
> can you send me the output that includes the line number in threadControl.c?
>
> > JDWP exit error AGENT_ERROR_INVALID_THREAD(203): missing entry in
> > running thread table
> > [src/jdk.jdwp.agent/share/native/libjdwp/threadControl.c:1109]
>
> thanks,
>
> Chris
> On 9/18/23 4:50 PM, Ben Berman wrote:
>
> Thanks for replying to this. I am not sophisticated enough to answer these
> questions. Since this bug is real, the best thing would be if someone who
> is more sophisticated tries the reproduction that is simpler and shared by
> Vlad here:
> https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction#focus=Comments-27-7821461.0-0
> <https://urldefense.com/v3/__https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction*focus=Comments-27-7821461.0-0__;Iw!!ACWV5N9M2RV99hQ!JMtWDF29MAzj0ca7Bz1ZM1-F2-PbLDIsjzRCv0Fonmp9-ytTR5QAIKPtP1jK8etz8-IMCRjuMdAzMGXEP07X0OgkDqdYcA$>
> . It reproduces in:
>
> openjdk version "21" 2023-09-19
> OpenJDK Runtime Environment (build 21+35-2513)
> OpenJDK 64-Bit Server VM (build 21+35-2513, mixed mode, sharing)
>
> on Windows.
>
> On Mon, Jul 10, 2023 at 6:52 PM Chris Plummer <chris.plummer at oracle.com>
> wrote:
>
>> One other thing to add. When you see a "JDWP exit error" like you
>> mentioned, that should result in the debuggee exiting. I'm not sure how
>> you are seeing the println() also being executed, unless the "JDWP exit
>> error" is happening afterwards, such as when the debuggee exits on its
>> own, and the debug agent is shutting down.
>>
>> Chris
>>
>> On 7/10/23 3:27 PM, Chris Plummer wrote:
>> > Hi Ben,
>> >
>> > The first time I read this I didn't notice the link you provided to
>> > the jetbrains issue you filed. I see about halfway down the page you
>> > show the following exception:
>> >
>> > JDWP exit error AGENT_ERROR_INVALID_THREAD(203): missing entry in
>> > running thread table
>> > [src/jdk.jdwp.agent/share/native/libjdwp/threadControl.c:1109]
>> >
>> > As is pointed out later in this issue page, this looks like
>> > JDK-8305209 <https://bugs.openjdk.org/browse/JDK-8305209>, which was
>> > fixed a few months ago. You were ask to try a recent version of JDK
>> > 21, and you replied back that it still reproduced, but the error you
>> > show later indicates that it is still happening at line 1109. It
>> > should be line 1116 if you are using a fixed version. Just wanted to
>> > double check that line 1116 is the line number you are seeing the
>> > error at when you use JDK 21.
>> >
>> > Also, when this error happens, it should cause the debuggee to exit
>> > with a core file and hs_err file. Are either of these present? The
>> > hs_err file would be very useful since it will contain a stack trace
>> > at the point of the error.
>> >
>> > thanks,
>> >
>> > Chris
>> >
>> > On 6/29/23 2:23 PM, Ben Berman wrote:
>> >> Investigating an issue in both IntelliJ and Eclipse debuggers led to
>> >> this bug: I can't break inside an anonymous class method of the form
>> >>
>> >> ```
>> >> new Object() {
>> >> void test() {
>> >> System.out.println("breakpoint here does not work");
>> >> }
>> >> }.test();
>> >> ```
>> >>
>> >> due to a buggy interaction between JDWP and virtual threads. The
>> >> console statement in the example above does indeed print, i.e. it is
>> >> executed.
>> >>
>> >> What would the next steps be to help with investigating and resolving
>> >> this issue?
>> >>
>> >>
>> https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction?clearDraft=true&description=%0A%0AIU-231.9161.38,%20JRE%2017.0.7%2B10-b829.16x64%20JetBrains%20s.r.o
>> <https://urldefense.com/v3/__https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction?clearDraft=true&description=*0A*0AIU-231.9161.38,*20JRE*2017.0.7*2B10-b829.16x64*20JetBrains*20s.r.o__;JSUlJSUlJQ!!ACWV5N9M2RV99hQ!JMtWDF29MAzj0ca7Bz1ZM1-F2-PbLDIsjzRCv0Fonmp9-ytTR5QAIKPtP1jK8etz8-IMCRjuMdAzMGXEP07X0Oh4JstG1A$>
>> >> <
>> https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction?clearDraft=true&description=%0A%0AIU-231.9161.38,%20JRE%2017.0.7%2B10-b829.16x64%20JetBrains%20s.r.o
>> <https://urldefense.com/v3/__https://youtrack.jetbrains.com/issue/IDEA-324002/IntelliJ-debugger-doesnt-break-nor-does-Eclipse-in-a-virtual-threads-project-inside-anonymous-class-methods-reproduction?clearDraft=true&description=*0A*0AIU-231.9161.38,*20JRE*2017.0.7*2B10-b829.16x64*20JetBrains*20s.r.o__;JSUlJSUlJQ!!ACWV5N9M2RV99hQ!JMtWDF29MAzj0ca7Bz1ZM1-F2-PbLDIsjzRCv0Fonmp9-ytTR5QAIKPtP1jK8etz8-IMCRjuMdAzMGXEP07X0Oh4JstG1A$>>.,%20OS%20Mac%20OS%20X(aarch64)%20v13.4,%20screens%203456.0x2234.0;%20Retina
>>
>> >>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/loom-dev/attachments/20230918/6abd5e7d/attachment.htm>
More information about the loom-dev
mailing list