[ https://issues.apache.org/jira/browse/PROTON-1075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15053132#comment-15053132 ]
ASF subversion and git services commented on PROTON-1075: --------------------------------------------------------- Commit 22c3ee91039d0a53730e60b94bf6cb7dddc24bce in qpid-proton's branch refs/heads/master from [~aconway] [ https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;h=22c3ee9 ] PROTON-1075: go: Enable -race by default for go tests, use go tools for dependency checking. Added the -race flag by default with golang go, disabled by default for gccgo as it does not work for me - errors about circular dependencies. Removed cumbersome and incorrect CMake code for checking go dependencies, use the simple go tools instead. `go install` runs each time you run make, but it does nothing if nothing needs to be done so there is no impact on build times. > Data races detected in go_test_electron > --------------------------------------- > > Key: PROTON-1075 > URL: https://issues.apache.org/jira/browse/PROTON-1075 > Project: Qpid Proton > Issue Type: Bug > Components: go-binding > Affects Versions: 0.11 > Reporter: Alan Conway > Assignee: Alan Conway > Fix For: 0.12.0 > > > I've been consistently seeing this for a little while: > (It's on an 8 core machine with F23s go 1.5.1). > Any ideas? > Andrew > 8/20 Testing: go_test_electron > 8/20 Test: go_test_electron > Command: "/home/andrew/Work/proton/bld/proton-c/bindings/go/electron.test" > Directory: > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron > "go_test_electron" start time: Dec 07 15:48 EST > Output: > ---------------------------------------------------------- > ================== > WARNING: DATA RACE > Read by goroutine 6: > qpid.apache.org/proton.(*Engine).Inject() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:195 > +0x > 57 > qpid.apache.org/proton.(*Engine).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:230 > +0x > 101 > qpid.apache.org/electron.(*connection).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 37 +0x86 > qpid.apache.org/electron.closeClientServer() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:78 +0x7e > qpid.apache.org/electron.TestClientSendServerReceive.func2() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:101 +0x4c > qpid.apache.org/electron.TestClientSendServerReceive() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:158 +0x15fd > testing.tRunner() > /usr/lib/golang/src/testing/testing.go:456 +0xdc > Previous write by goroutine 8: > qpid.apache.org/proton.(*Engine).Run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:320 > +0x > a45 > qpid.apache.org/electron.(*connection).run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 30 +0x49 > Goroutine 6 (running) created at: > testing.RunTests() > /usr/lib/golang/src/testing/testing.go:561 +0xaa3 > testing.(*M).Run() > /usr/lib/golang/src/testing/testing.go:494 +0xe4 > main.main() > qpid.apache.org/electron/_test/_testmain.go:64 +0x20f > Goroutine 8 (running) created at: > qpid.apache.org/electron.newConnection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 25 +0xb58 > qpid.apache.org/electron.(*container).Connection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/container.go:76 > +0x91 > qpid.apache.org/electron.newServer.func1() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:50 +0x17d > ================== > ================== > WARNING: DATA RACE > Read by goroutine 24: > qpid.apache.org/proton.(*Engine).Inject() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:195 > +0x > 57 > qpid.apache.org/proton.(*Engine).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:230 > +0x > 101 > qpid.apache.org/electron.(*connection).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 37 +0x86 > qpid.apache.org/electron.TestClientReceiver() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:204 +0x4aa > testing.tRunner() > /usr/lib/golang/src/testing/testing.go:456 +0xdc > Previous write by goroutine 28: > qpid.apache.org/proton.(*Engine).Run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:320 > +0x > a45 > qpid.apache.org/electron.(*connection).run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 30 +0x49 > Goroutine 24 (running) created at: > testing.RunTests() > /usr/lib/golang/src/testing/testing.go:561 +0xaa3 > testing.(*M).Run() > /usr/lib/golang/src/testing/testing.go:494 +0xe4 > main.main() > qpid.apache.org/electron/_test/_testmain.go:64 +0x20f > Goroutine 28 (running) created at: > qpid.apache.org/electron.newConnection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 25 +0xb58 > qpid.apache.org/electron.(*container).Connection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/container.go:76 > +0x91 > qpid.apache.org/electron.newClient() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:61 +0x153 > qpid.apache.org/electron.newClientServer() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:71 +0x108 > qpid.apache.org/electron.TestClientReceiver() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:162 +0x68 > testing.tRunner() > /usr/lib/golang/src/testing/testing.go:456 +0xdc > ================== > ================== > WARNING: DATA RACE > Read by goroutine 34: > qpid.apache.org/proton.(*Engine).Inject() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:195 > +0x > 57 > qpid.apache.org/proton.(*Engine).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:230 > +0x > 101 > qpid.apache.org/electron.(*connection).Close() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 37 +0x86 > qpid.apache.org/electron.closeClientServer() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:78 +0x7e > qpid.apache.org/electron.TestTimeouts.func2() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:224 +0x4c > qpid.apache.org/electron.TestTimeouts() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:271 +0xb83 > testing.tRunner() > /usr/lib/golang/src/testing/testing.go:456 +0xdc > Previous write by goroutine 36: > qpid.apache.org/proton.(*Engine).Run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/proton/engine.go:320 > +0x > a45 > qpid.apache.org/electron.(*connection).run() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 30 +0x49 > Goroutine 34 (running) created at: > testing.RunTests() > /usr/lib/golang/src/testing/testing.go:561 +0xaa3 > testing.(*M).Run() > /usr/lib/golang/src/testing/testing.go:494 +0xe4 > main.main() > qpid.apache.org/electron/_test/_testmain.go:64 +0x20f > Goroutine 36 (running) created at: > qpid.apache.org/electron.newConnection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go:1 > 25 +0xb58 > qpid.apache.org/electron.(*container).Connection() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/container.go:76 > +0x91 > qpid.apache.org/electron.newServer.func1() > > /home/andrew/Work/proton/src/proton-c/bindings/go/src/qpid.apache.org/electron/messaging_test. > go:50 +0x17d > ================== > PASS > Found 3 data race(s) > <end of output> > Test time = 1.05 sec > ---------------------------------------------------------- > Test Failed. > "go_test_electron" end time: Dec 07 15:48 EST > "go_test_electron" time elapsed: 00:00:01 > ---------------------------------------------------------- -- This message was sent by Atlassian JIRA (v6.3.4#6332)