-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
x/exp/trace: interacts badly with race detector #69995
Comments
cc @mknyszek |
Huh! An OOM is very unexpected. I'll take a look. |
And thank you for trying out the flight recorder. :) |
I don't think this is necessarily related to the flight recorder. Although I couldn't get memory to blow up really quickly, it does seem to creep up even if I just build the following with
This suggests something is more fundamentally problematic with the execution tracer and race mode. The flight recorder just has the tracer enabled all the time (which should, in theory, be completely fine). |
I forgot to reply here earlier, but additional testing led me to feeling like the memory increases weren't really related to tracing necessarily, since they also seemed to be happening just with race enabled, though I need to double check that. (Memory also tended to level out eventually.) Unfortunately that puts me in a position of saying I couldn't really reproduce it. One caveat though is that the Tailscale server never actually connected to anything, it just sat there emitting a message stating something to that effect periodically. Perhaps that's a problem I had with the reproducer. @josharian was your Tailscale server active? |
I could reproduce without. I suspect that there may simply be a massive amount of race writes/events being generated, perhaps by the gvisor userspace networking stack. And yes, I took a second look and it does appear that -race is a large part of the problem. Given that the next steps are unclear, I'll close this for now. |
Go version
go version go1.23.2 X:rangefunc darwin/arm64
Output of
go env
in your module/workspace:What did you do?
Run this program using
go run -race
:What did you see happen?
Rapidly growing memory use, ended with an OOM, on a machine with 128gb of RAM. Approximately all the allocs are within
x/exp/trace
.If you run without
-race
, the program happily runs indefinitely.What did you expect to see?
No OOM.
The text was updated successfully, but these errors were encountered: