Skip to content
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

fatal error: concurrent map read and map write #6816

Closed
syncthing-sentry bot opened this issue Jul 7, 2020 · 1 comment
Closed

fatal error: concurrent map read and map write #6816

syncthing-sentry bot opened this issue Jul 7, 2020 · 1 comment
Labels
bug A problem with current functionality, as opposed to missing functionality (enhancement) frozen-due-to-age Issues closed and untouched for a long time, together with being locked for discussion
Milestone

Comments

@syncthing-sentry
Copy link

Sentry Issue: SYNCTHING-26R

Stacktrace (most recent call first):

  File "C:/Go/src/runtime/panic.go", line 1116, in throw
  File "C:/Go/src/runtime/map.go", line 469, in mapaccess2
  File "C:/BuildAgent/work/174e136266f8a219/lib/model/model.go", line 1179, in handleIntroductions
    if _, ok := m.cfg.Devices()[device.ID]; !ok {
  File "C:/BuildAgent/work/174e136266f8a219/lib/model/model.go", line 1123, in ClusterConfig
    folders, devices, foldersDevices, introduced := m.handleIntroductions(deviceCfg, cm)
  File "<autogenerated>", line 1, in ClusterConfig
  File "C:/BuildAgent/work/174e136266f8a219/lib/protocol/protocol.go", line 392, in dispatcherLoop
    if err := c.receiver.ClusterConfig(c.id, *msg); err != nil {
  File "C:/BuildAgent/work/174e136266f8a219/lib/protocol/protocol.go", line 234, in func1
    err := c.dispatcherLoop()
  File "C:/Go/src/runtime/asm_amd64.s", line 1373, in goexit

fatal error: concurrent map read and map write

// ab: looks genuine, but my gut says we've fixed something like this.

@imsodin
Copy link
Member

imsodin commented Jul 7, 2020

You might be thinking about #6684, where wrapper.folderMap was removed. Actually I don't see why we it's ok to have wrapper.deviceMap: We generally copy everything thus I don't think we enforce that no-one ever changes the returned map. I'll remove it.

imsodin added a commit to imsodin/syncthing that referenced this issue Jul 7, 2020
@imsodin imsodin closed this as completed in 8d67235 Jul 7, 2020
@calmh calmh added this to the v1.8.0 milestone Jul 14, 2020
@calmh calmh added the bug A problem with current functionality, as opposed to missing functionality (enhancement) label Jul 14, 2020
@st-review st-review added the frozen-due-to-age Issues closed and untouched for a long time, together with being locked for discussion label Jul 8, 2021
@syncthing syncthing locked and limited conversation to collaborators Jul 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug A problem with current functionality, as opposed to missing functionality (enhancement) frozen-due-to-age Issues closed and untouched for a long time, together with being locked for discussion
Projects
None yet
Development

No branches or pull requests

3 participants