Dear Paul,
Thanks a lot for your review! I am trying to remend the patch
One problem is that in future, I will add more options for histo, such
as “parallel”, “incremental”.
so do you thinking option processing with loop in heap_inspection() in
attachListener.cpp would
be more reasonable than the “if else” ?
Thanks
BRs,
Lin
From: Hohensee, Paul <[email protected]>
Sent: Saturday, December 29, 2018 3:54 AM
To: 臧琳 <[email protected]>; [email protected]
Subject: Re: [RFR]8215622: Add dump to file support for jmap histo
Update the copyright dates to 2019 please, since this won’t get pushed until
then.
In JMap.java, I’d emulate dump() and use
String filename = null;
String subopts[] = options.split(",");
for (String subopt : subopts){
if (subopt.isEmpty() || subopt.equals("all")) {
// pass
} else if (subopt.equals("live")) {
liveopt = "-live";
} else if (subopt.startsWith("file=")) {
// file=<file> - check that <file> is specified
if (subopt.length() > 5) {
filename = subopt.substring(5);
}
} else {
usage(1);
}
}
// get the canonical path - important to avoid just passing
// a "heap.bin" and having the dump created in the target VM
// working directory rather than the directory where jmap
// is executed.
filename = new File(filename).getCanonicalPath();
// inspectHeap is not the same as jcmd GC.class_histogram
executeCommandForPid(pid, "inspectheap", filename, liveopt);
I.e., use an enhanced for loop to scan the array, and duplicate dump()’s
executeCommandForPid() argument order, as well as dump()’s “file=<>” check (the
code that starts with “if (subopt.startsWith”) and canonicalization. Actually,
better to factor the latter out into its own method and use it from both
histo() and dump().
The argument checking code in heap_inspection() in attachListener.cpp can be
simplified along the lines of dump_heap(). I.e., you don’t need to loop over
the argument list. To match up with dump_heap()’s info messages, the info
message string at the end should be “Heap inspection file created: %s”.
Thanks,
Paul
From: serviceability-dev
<[email protected]<mailto:[email protected]>>
on behalf of 臧琳 <[email protected]<mailto:[email protected]>>
Date: Thursday, December 20, 2018 at 11:03 PM
To:
"[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Subject: [RFR]8215622: Add dump to file support for jmap histo
Hi All,
May I ask your help to review this patch for enhance jmap –histo.
It add the “file=<path>” arguments that allow jmap –histo outputs data to file
directly.
This patch is also part of the enhancement described in
https://bugs.openjdk.java.net/browse/JDK-8214535.
Webrev: http://cr.openjdk.java.net/~xiaofeya/8215622/webrev.00/
Bug: https://bugs.openjdk.java.net/browse/JDK-8215622
Thanks.
BRs,
Lin