From d3562c9db95e7dffaba457bb09ec685ad033a722 Mon Sep 17 00:00:00 2001 From: Hana Kim Date: Fri, 2 Mar 2018 15:26:37 -0500 Subject: internal/trace: Revert "remove backlinks from span/task end to start" This reverts commit 16398894dccf06e34af8fb1c7cff6eed9b163057. This broke TestUserTaskSpan test. Change-Id: If5ff8bdfe84e8cb30787b03ead87205ece3d5601 Reviewed-on: https://go-review.googlesource.com/98235 Reviewed-by: Heschi Kreinick --- src/internal/trace/parser.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/internal/trace/parser.go') diff --git a/src/internal/trace/parser.go b/src/internal/trace/parser.go index 29ba73c761..155c23940a 100644 --- a/src/internal/trace/parser.go +++ b/src/internal/trace/parser.go @@ -56,7 +56,8 @@ type Event struct { // for GoSysExit: the next GoStart // for GCMarkAssistStart: the associated GCMarkAssistDone // for UserTaskCreate: the UserTaskEnd - // for UserSpan: if the start span, the corresponding UserSpan end event + // for UsetTaskEnd: the UserTaskCreate + // for UserSpan: the corresponding span start or end event Link *Event } @@ -809,10 +810,9 @@ func postProcessTrace(ver int, events []*Event) error { } tasks[ev.Args[0]] = ev case EvUserTaskEnd: - taskid := ev.Args[0] - if taskCreateEv, ok := tasks[taskid]; ok { - taskCreateEv.Link = ev - delete(tasks, taskid) + if prevEv, ok := tasks[ev.Args[0]]; ok { + prevEv.Link = ev + ev.Link = prevEv } case EvUserSpan: mode := ev.Args[1] @@ -828,6 +828,7 @@ func postProcessTrace(ver int, events []*Event) error { } // Link span start event with span end event s.Link = ev + ev.Link = s if n > 1 { activeSpans[ev.G] = spans[:n-1] -- cgit v1.3