Thanks for the review, David! And thank you for pointing that out about
the test. Since the GCs are variable, I'll just delete the line checking
for "CollectFull." The test is still sufficient to test the logging. And
I'll check in the code.
Rachel
On 11/22/2015 11:30 PM, David Holmes wrote:
Hi Rachel,
Code changes seem okay - thanks.
We will continue discussion re info vs debug elsewhere. :)
I think we will also have to address the problem of no-atomic logging
of multi-part logging statements sometime as well. Not a new problem
but perhaps exacerbated in UL and compounded by inclusion of this
particular multi-part logging in product mode.
Only issue with regard to the test is the occurrence of the
"CollectFull" string - is that dependent on which GC is being used? I
turned on TraceVMOperation with code that called System.gc() and only
saw:
[VM_Operation (0xf6773e40): GenCollectForAllocation, mode: safepoint,
requested by thread 0xf660f400]
Thanks,
David
On 21/11/2015 5:27 AM, Rachel Protacio wrote:
Thank you, David, Kirk, Marcus, Max, and Coleen, for all your comments.
Updated webrev: http://cr.openjdk.java.net/~rprotacio/8143157.01/
Changes:
- moved initialization of "outputStream* debugstream" to inside
vmoperation conditional
- added boolean for log_is_enabled conditional to save duplicate
operation and avoid possibility that flag has been enabled/disabled
between calls
- removed "[" and "]" from the beginning and end delimiters of the
logging output. Added "begin" and "end" as lead-in to log VMOperation
thread info statements instead (could not insert in middle of string
because print_on_error is used in other places).*
- added memory heap limit to test (ProcessBuilder call in
VMOperationTest) and added comment to VMOperationTestMain
Thank you,
Rachel
*Sample output:
$ java -Xlog:vmoperation=debug VMOperationTestMain
[0.262s][debug ][vmoperation] begin VM_Operation
(0x00007f01a029a700): G1CollectFull, mode: safepoint, requested by
thread 0x00007f0198018000
[0.278s][debug ][vmoperation] end VM_Operation
(0x00007f01a029a700): G1CollectFull, mode: safepoint, requested by
thread 0x00007f0198018000
On 11/17/2015 2:50 PM, Rachel Protacio wrote:
Hi,
Please review the following small logging enhancement.
Summary: The former -XX:+TraceVMOperation flag is updated to the
unified logging framework and is now replaced with -Xlog:vmoperation
in product mode.
Open webrev: http://cr.openjdk.java.net/~rprotacio/8143157/
Bug: https://bugs.openjdk.java.net/browse/JDK-8143157
Testing: Passes jtreg, JPRT, RBT quick tests, and refworkload
performance tests.
A compatability request has been accepted with regard to this change.
Thank you very much,
Rachel