> 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 one additional commit since the last revision: Improved comments. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20367/files - new: https://git.openjdk.org/jdk/pull/20367/files/5e338272..92328635 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20367&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20367&range=01-02 Stats: 33 lines in 2 files changed: 27 ins; 2 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/20367.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20367/head:pull/20367 PR: https://git.openjdk.org/jdk/pull/20367