Closed hwchiu closed 7 years ago
I found that John-Lin/ovsdb use contiv/libovsdb and there's a global map variable on contriv/libovsdb/client.go. They don't do any lock procedure to protect map and that cause this problem. Besides, I also found the original repo of libovsdb "socketplane/libovsdb" has fix that problem via lock. I think John-Lin/ovsdb should change its dependency from contiv/libovsdb to socketplane/libovsdb. I will testing its function and send a PR to you if it works.
Close it since https://github.com/John-Lin/ovsdb/pull/8 has updated to fix this issue.
Assume the go file is test.go Clean the topology via clean.py before each
go run
execute viasudo -E env PATH=$PATH go run -race test.go
will get following error