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
You should only lock at the outer most level ( using getters and setters) where you are modifying shared maps. Seems like you added alot of other locks which are not needed?
Its possible that I added to many. The problem is that there are many gorutines that uses the same map. Most of then are created by the Identify() method in nodes/nodes.go
If you checkout the d021d0e commit an run the example with go run -race *.go you will see a lot of race conditions
In Go 1.8, the runtime has improved always-on data race detection for maps (see https://beta.golang.org/doc/go1.8#mapiter).
It caught this bug, which crashes the whole program instead of letting memory be silently corrupted:
The text was updated successfully, but these errors were encountered: