You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The binary is built with go install -race -gcflags=-l against commit 220d855. I have seen this data race with older versions, just never got around to report it.
The data race appears to be triggered when new connections are created while MsgRecv is running.
The data race is observed in the same system as in #37 where there are frequent context cancellations during read operations. If I pass in the background context instead, the data races go away.
Unfortunately I don't have a minimal code example that reproduces it. I could look into to providing that if it's not obvious what the problem is by just eyeing the traces above.
Thanks,
Tommy
The text was updated successfully, but these errors were encountered:
Thanks for the report. I'm surprised there's a data race here because all of the tests both for drpc and all of the storj code we have run with -race. Looking at the traces, it appears to be related to how drpc reuses some buffers, but I don't see how it's possible for the ReadPacketUsing to be concurrent with the Unmarshal. There's a packetBuffer type that coordinates access to it.
I guess that's all to say that anything you can provide to help with reproducing would be appreciated. I'll continue to look in the code for anything I missed.
Hi,
I'm seeing the following data race (traces slightly redacted):
The binary is built with
go install -race -gcflags=-l
against commit220d855. I have seen this data race with older versions, just never got around to report it.
The data race appears to be triggered when new connections are created while
MsgRecv
is running.The data race is observed in the same system as in #37 where there are frequent context cancellations during read operations. If I pass in the background context instead, the data races go away.
Unfortunately I don't have a minimal code example that reproduces it. I could look into to providing that if it's not obvious what the problem is by just eyeing the traces above.
Thanks,
Tommy
The text was updated successfully, but these errors were encountered: