-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: scvg information is spamming with GODEBUG=gctrace=1 #32952
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
cc @mknyszek @aclements to see if this is expected/intentional. |
I intentionally added this for Go 1.13 to reflect the change in policy but retain the original semantics. The reason you see it print so often is because it prints every time the scavenger scavenges. I figured that this was generally useful information to have, since the scavenger's pacing information is updated with each GC cycle, but you're right that it's kind of a lot for such a small program. I can move it behind gctrace=2 or something, or summarize it (don't print every time, just at most once per GC cycle or something). I'm open to suggestions. Also: you mention that it's scavenging infinitely, but I can't reproduce that. It's paced to finish in about 2.5 seconds on |
Oh and for more information on what changed with scavenging, please see #30333. |
Setting Go 1.13 milestone because this could conceivably be fixed before the release; it's a very low-risk fix and would make debugging a bit easier. Just needs a decision on what degree of logging is appropriate. |
Sorry for my incorrect information before, it's finished in about 2.5 seconds on my laptop too. |
@mknyszek, would it make sense to rate limit the scvg debug lines and only print out a "cumulative" line every, say, 30 seconds? |
Change https://golang.org/cl/186924 mentions this issue: |
Is there anyway to turn this off in 1.13, given cl/186924 doesn't appear to have been added to go1.13? This is incredibly spammy for us, we will need to disable GODEBUG if not |
To give another perspective on the user impact of this: In the program I'm working with today, I get 134 to 138 "scvg" lines following each "gc N" line. The lines I want to see (showing the timing/parameters/results of garbage collections) end up hidden in the backscroll. When I'm using a shell, I can add a Printing a line or two of summary, either after each GC run or every 30 seconds, seems like a good compromise. |
I ran into this just today. In golang 1.12 we ran with gctrace on so that we can track trends in GC from the logfiles. In our large-heap application that we were testing with 1.13, of a 2.6Gb log file that was created, 3.2Mb were NOT lines from scavenging. It would be very helpful to have the ability to reduce that. |
Change https://golang.org/cl/212640 mentions this issue: |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
What did you expect to see?
What did you see instead?
scvg information is printing Infinitely.
The text was updated successfully, but these errors were encountered: