Skip to content
This repository has been archived by the owner on Mar 24, 2022. It is now read-only.

ginkgo -r -race results in data race in resource suite #12

Closed
robdimsdale opened this issue May 2, 2015 · 1 comment
Closed

ginkgo -r -race results in data race in resource suite #12

robdimsdale opened this issue May 2, 2015 · 1 comment

Comments

@robdimsdale
Copy link
Contributor

This is repeatable every time I run ginkgo -r -race on the resource directory

[1430594457] Resource Suite - 64/64 specs •••••••••••••••••••••••==================
WARNING: DATA RACE
Read by goroutine 47:
  github.com/concourse/atc/resource_test.func·085()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_out_test.go:57 +0x4c
  github.com/cloudfoundry-incubator/garden/fakes.(*FakeProcess).Wait()
      ~/workspace/concourse/src/github.com/cloudfoundry-incubator/garden/fakes/fake_process.go:71 +0x220
  github.com/concourse/atc/resource.func·003()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/run_script.go:134 +0x6b

Previous write by goroutine 7:
  github.com/concourse/atc/resource_test.func·086()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_out_test.go:51 +0x352
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:104 +0x11b
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:63 +0xd3
  github.com/onsi/ginkgo/internal/leafnodes.(*SetupNode).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/setup_nodes.go:14 +0x78
  github.com/onsi/ginkgo/internal/spec.(*Spec).runSample()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/spec/spec.go:149 +0x362
  github.com/onsi/ginkgo/internal/spec.(*Spec).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/spec/spec.go:118 +0x1a9
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runSpecs()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:144 +0x2fa
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:61 +0xb8
  github.com/onsi/ginkgo/internal/suite.(*Suite).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/suite/suite.go:59 +0x35b
  github.com/onsi/ginkgo.RunSpecsWithCustomReporters()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/ginkgo_dsl.go:203 +0x38f
  github.com/onsi/ginkgo.RunSpecs()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/ginkgo_dsl.go:184 +0x100
  github.com/concourse/atc/resource_test.TestResource()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_suite_test.go:30 +0xa8
  testing.tRunner()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:447 +0x133

Goroutine 47 (running) created at:
  github.com/concourse/atc/resource.func·004()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/run_script.go:140 +0xa66
  github.com/tedsuo/ifrit.RunFunc.Run()
      ~/workspace/concourse/src/github.com/tedsuo/ifrit/runner.go:36 +0x56
  github.com/concourse/atc/resource.func·002()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_out.go:33 +0x35c
  github.com/tedsuo/ifrit.RunFunc.Run()
      ~/workspace/concourse/src/github.com/tedsuo/ifrit/runner.go:36 +0x56
  github.com/concourse/atc/resource.(*versionedSource).Run()
      <autogenerated>:14 +0x97
  github.com/tedsuo/ifrit.(*process).run()
      ~/workspace/concourse/src/github.com/tedsuo/ifrit/process.go:71 +0x97

Goroutine 7 (running) created at:
  testing.RunTests()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:555 +0xd4e
  testing.(*M).Run()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:485 +0xe0
  main.main()
      github.com/concourse/atc/resource/_test/_testmain.go:54 +0x28c
==================
•••••••••••••••••••••••••••••••••==================
WARNING: DATA RACE
Read by goroutine 30:
  github.com/concourse/atc/resource_test.func·024()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_in_test.go:56 +0x4c
  github.com/cloudfoundry-incubator/garden/fakes.(*FakeProcess).Wait()
      ~/workspace/concourse/src/github.com/cloudfoundry-incubator/garden/fakes/fake_process.go:71 +0x220
  github.com/concourse/atc/resource.func·003()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/run_script.go:134 +0x6b

Previous write by goroutine 7:
  github.com/concourse/atc/resource_test.func·025()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_in_test.go:50 +0x3fc
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:104 +0x11b
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:63 +0xd3
  github.com/onsi/ginkgo/internal/leafnodes.(*SetupNode).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/leafnodes/setup_nodes.go:14 +0x78
  github.com/onsi/ginkgo/internal/spec.(*Spec).runSample()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/spec/spec.go:149 +0x362
  github.com/onsi/ginkgo/internal/spec.(*Spec).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/spec/spec.go:118 +0x1a9
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runSpecs()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:144 +0x2fa
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:61 +0xb8
  github.com/onsi/ginkgo/internal/suite.(*Suite).Run()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/internal/suite/suite.go:59 +0x35b
  github.com/onsi/ginkgo.RunSpecsWithCustomReporters()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/ginkgo_dsl.go:203 +0x38f
  github.com/onsi/ginkgo.RunSpecs()
      ~/workspace/concourse/src/github.com/onsi/ginkgo/ginkgo_dsl.go:184 +0x100
  github.com/concourse/atc/resource_test.TestResource()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/resource_suite_test.go:30 +0xa8
  testing.tRunner()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:447 +0x133

Goroutine 30 (running) created at:
  github.com/concourse/atc/resource.func·004()
      ~/workspace/concourse/src/github.com/concourse/atc/resource/run_script.go:140 +0xa66
  github.com/tedsuo/ifrit.RunFunc.Run()
      ~/workspace/concourse/src/github.com/tedsuo/ifrit/runner.go:36 +0x56
  github.com/concourse/atc/resource.(*versionedSource).Run()
      <autogenerated>:14 +0x97
  github.com/tedsuo/ifrit.(*process).run()
      ~/workspace/concourse/src/github.com/tedsuo/ifrit/process.go:71 +0x97

Goroutine 7 (running) created at:
  testing.RunTests()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:555 +0xd4e
  testing.(*M).Run()
      /usr/local/Cellar/go/1.4.2/libexec/src/testing/testing.go:485 +0xe0
  main.main()
      github.com/concourse/atc/resource/_test/_testmain.go:54 +0x28c
==================
@robdimsdale
Copy link
Contributor Author

Submitted PR #13 to fix this. We can continue any discussion there.

vito added a commit that referenced this issue May 3, 2015
wait for process to exit after each example

fixes #12
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant