mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
7176220: 'Full GC' events miss date stamp information occasionally
Move date stamp logic into GCTraceTime Reviewed-by: brutisso, tschatzl
This commit is contained in:
parent
0afc5ae6fc
commit
f65caabf9c
8 changed files with 2 additions and 11 deletions
|
@ -5945,7 +5945,6 @@ void CMSCollector::reset(bool concurrent) {
|
|||
}
|
||||
|
||||
void CMSCollector::do_CMS_operation(CMS_op_type op, GCCause::Cause gc_cause) {
|
||||
gclog_or_tty->date_stamp(PrintGC && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
|
||||
GCTraceTime t(GCCauseString("GC", gc_cause), PrintGC, !PrintGCDetails, NULL, _gc_tracer_cm->gc_id());
|
||||
TraceCollectorStats tcs(counters());
|
||||
|
|
|
@ -1222,7 +1222,6 @@ bool G1CollectedHeap::do_collection(bool explicit_gc,
|
|||
|
||||
// Timing
|
||||
assert(gc_cause() != GCCause::_java_lang_system_gc || explicit_gc, "invariant");
|
||||
gclog_or_tty->date_stamp(G1Log::fine() && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(G1Log::finer(), true, gclog_or_tty);
|
||||
|
||||
{
|
||||
|
|
|
@ -230,7 +230,6 @@ void VM_CGC_Operation::release_and_notify_pending_list_lock() {
|
|||
}
|
||||
|
||||
void VM_CGC_Operation::doit() {
|
||||
gclog_or_tty->date_stamp(G1Log::fine() && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(G1Log::finer(), true, gclog_or_tty);
|
||||
GCTraceTime t(_printGCMessage, G1Log::fine(), true, G1CollectedHeap::heap()->gc_timer_cm(), G1CollectedHeap::heap()->concurrent_mark()->concurrent_gc_id());
|
||||
SharedHeap* sh = SharedHeap::heap();
|
||||
|
|
|
@ -168,7 +168,6 @@ bool PSMarkSweep::invoke_no_policy(bool clear_all_softrefs) {
|
|||
{
|
||||
HandleMark hm;
|
||||
|
||||
gclog_or_tty->date_stamp(PrintGC && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
|
||||
GCTraceTime t1(GCCauseString("Full GC", gc_cause), PrintGC, !PrintGCDetails, NULL, _gc_tracer->gc_id());
|
||||
TraceCollectorStats tcs(counters());
|
||||
|
|
|
@ -2055,7 +2055,6 @@ bool PSParallelCompact::invoke_no_policy(bool maximum_heap_compaction) {
|
|||
gc_task_manager()->task_idle_workers();
|
||||
heap->set_par_threads(gc_task_manager()->active_workers());
|
||||
|
||||
gclog_or_tty->date_stamp(PrintGC && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
|
||||
GCTraceTime t1(GCCauseString("Full GC", gc_cause), PrintGC, !PrintGCDetails, NULL, _gc_tracer.gc_id());
|
||||
TraceCollectorStats tcs(counters());
|
||||
|
|
|
@ -330,7 +330,6 @@ bool PSScavenge::invoke_no_policy() {
|
|||
ResourceMark rm;
|
||||
HandleMark hm;
|
||||
|
||||
gclog_or_tty->date_stamp(PrintGC && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
|
||||
GCTraceTime t1(GCCauseString("GC", gc_cause), PrintGC, !PrintGCDetails, NULL, _gc_tracer.gc_id());
|
||||
TraceCollectorStats tcs(counters());
|
||||
|
|
|
@ -49,10 +49,8 @@ GCTraceTime::GCTraceTime(const char* title, bool doit, bool print_cr, GCTimer* t
|
|||
}
|
||||
|
||||
if (_doit) {
|
||||
if (PrintGCTimeStamps) {
|
||||
gclog_or_tty->stamp();
|
||||
gclog_or_tty->print(": ");
|
||||
}
|
||||
gclog_or_tty->date_stamp(PrintGCDateStamps);
|
||||
gclog_or_tty->stamp(PrintGCTimeStamps);
|
||||
if (PrintGCID) {
|
||||
gclog_or_tty->print("#%u: ", gc_id.id());
|
||||
}
|
||||
|
|
|
@ -363,7 +363,6 @@ void GenCollectedHeap::do_collection(bool full,
|
|||
|
||||
bool complete = full && (max_level == (n_gens()-1));
|
||||
const char* gc_cause_prefix = complete ? "Full GC" : "GC";
|
||||
gclog_or_tty->date_stamp(PrintGC && PrintGCDateStamps);
|
||||
TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
|
||||
// The PrintGCDetails logging starts before we have incremented the GC id. We will do that later
|
||||
// so we can assume here that the next GC id is what we want.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue