On Thu, 8 Aug 2024 19:28:09 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
>> JVMTI has a somewhat unique event called DataDumpRequest. One way it is >> triggered is via the JVMTI.data_dump jcmd, which causes JVMTI to send the >> DataDumpRequest event to all agents that have registered for the event >> callback. The agent is free to do pretty much what it wants during the >> callback, but the normal usage is to dump anything that might be useful for >> debugging the agent. In the case of the debug agent, it could dump internal >> data like the list of known threads and event handlers. After ranked monitor >> support is complete, it can also dump the state of all jvmti raw monitors >> that the debug agent uses. >> >> I decided to not enable this feature by default, and not make public the >> option to enable it. This should only be used by developers working on the >> debug agent, or by users when requested to do so (by debug agent developers) >> to help debug a debug agent problem. >> >> Most of the code executed during the data dump was only available for debug >> builds, so I've made it available for all builds. Their addition does not >> affect product builds except for adding a small footprint. >> >> TBD is directing the output to a file. This is useful for some of the >> debugger tests that don't include the debuggee output in the log. This seems >> to be the case for most com/sun/jdi tests. I decided not to include it for >> this first pass since it is rather disruptive and detracts from the main >> changes being made. >> >> testing tbd: run all tier1, tier2, and. tie5 svc tests. > > Chris Plummer has updated the pull request incrementally with two additional > commits since the last revision: > > - Minor improvment to datadump output > - Add test cast for new debug agent datadump support test/jdk/com/sun/jdi/DataDumpTest.java line 51: > 49: * @library /test/lib > 50: * @modules jdk.jdi > 51: * @build DataDumpTest Is the build needed to build 'DataDumpTestTarg' because it is not explicitly used by the test? test/jdk/com/sun/jdi/DataDumpTest.java line 52: > 50: * @modules jdk.jdi > 51: * @build DataDumpTest > 52: * @run main/othervm/timeout=15 DataDumpTest Is the othervm is really needed in this test? Also, it is unclear why the timeout=15 and not usual 120? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20367#discussion_r1710199916 PR Review Comment: https://git.openjdk.org/jdk/pull/20367#discussion_r1710203086