Update scripting that checks race conditions
What does this MR do?
Makes the race condition detector prettier
Why was this MR needed?
Currently our race condition detector just checks if the configured limit is not exceeded. But to find the details of what and where generates the race conditions one still needs to manually parse (with eyes!) the output of all test jobs.
This MR will update the race condition detector to a version that will not only guard the limit, but also print details about all found race conditions.
Old version:
.testoutput/
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-volumes-permission.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-session-proxy.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-cache-gcs.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-featureflags.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-secret_engines.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-secret_engines-kv_v2.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-container-helperimage.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-labels.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-dns.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.5.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-volumes.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-log-test.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.7.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-volumes.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-session.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-tls-ca_chain.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-url.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.6.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-archives.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-machine.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-networks.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-secrets-resolvers-vault.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-shells.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-machine.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-cache-s3.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-internal-registry.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-retry.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-virtualbox.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-certificate.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-archives.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.6.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-custom-command.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-session.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-prometheus.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-docker.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-ssh.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-volumes-parser.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-custom.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-path.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-custom.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.5.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-machine.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-container-windows.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-referees.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-shells.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-machine.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-common.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-container-services.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-auth_methods.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-trace.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-cache-azure.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-shells.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-service.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers-archive.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-secrets.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-auth_methods-jwt.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-cache.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.5.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-timeperiod.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.1.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-secret_engines-kv_v1.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-vault-service.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-parallels.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.4.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.5.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-custom.2.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-docker-auth.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-process.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-virtualbox.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-log.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-commands-helpers.3.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker-internal-wait.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-helpers-gitlab_ci_yaml_parser.0.race.output.txt
.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.1.race.output.txt
Found 8 race conditions. Maximum allowed value is 24
New version:
# The limit 24 is the number of race conditions detected on master.
# This number is not allowed to increase, and it has to be lowered when we
# fix an existing race conditions
time="2020-11-07T04:41:09Z" level=info msg="Parsed file" file=.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-custom-command.0.race.output.txt found=6
time="2020-11-07T04:41:09Z" level=info msg="Parsed file" file=.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-docker.4.race.output.txt found=1
time="2020-11-07T04:41:09Z" level=info msg="Parsed file" file=.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-kubernetes.1.race.output.txt found=1
time="2020-11-07T04:41:09Z" level=info msg="Parsed file" file=.testoutput/gitlab.com-gitlab-org-gitlab-runner-executors-shell.0.race.output.txt found=5
time="2020-11-07T04:41:09Z" level=info msg="Parsed file" file=.testoutput/gitlab.com-gitlab-org-gitlab-runner-network.4.race.output.txt found=1
time="2020-11-07T04:41:09Z" level=info msg="Found 14 races"
===============================================
============ RACES DETECTOR REPORT ============
===============================================
-> RACE 1:
Write: 21
--> sync/atomic.CompareAndSwapInt32() /usr/local/go/src/runtime/race_amd64.s:293 +0xb
--> sync.(*Mutex).Lock() /usr/local/go/src/sync/mutex.go:74 +0x49
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:364 +0x61
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Previous read: 20
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Recorded 2 goroutines:
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 2:
Read: 20
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:982 +0x359a
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 21
--> sync/atomic.CompareAndSwapInt32() /usr/local/go/src/runtime/race_amd64.s:293 +0xb
--> sync.(*Mutex).Lock() /usr/local/go/src/sync/mutex.go:74 +0x49
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:364 +0x61
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Recorded 2 goroutines:
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 3:
Write: 21
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x7f8
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Previous read: 20
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Recorded 2 goroutines:
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 4:
Read: 20
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:776 +0x1246
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 21
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x7f8
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Recorded 2 goroutines:
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 5:
Read: 20
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:776 +0x1246
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 21
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x79e
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Recorded 2 goroutines:
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 6:
Read: 20
--> reflect.Value.String() /usr/local/go/src/reflect/value.go:1845 +0x5d
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:761 +0x3156
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:776 +0x1246
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:77 +0x482
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 21
--> github.com/stretchr/testify/assert.CallerInfo() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/assert/assertions.go:147 +0x3c3
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x57e
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).waitForCommand() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:86 +0x77
Recorded 2 goroutines:
-> Goroutine 20
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:95 +0xacd
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 21
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.(*command).Run() /builds/gitlab-org/gitlab-runner/executors/custom/command/command.go:69 +0x1f5
--> gitlab.com/gitlab-org/gitlab-runner/executors/custom/command.TestCommand_Run.func4() /builds/gitlab-org/gitlab-runner/executors/custom/command/command_test.go:133 +0x532
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 7:
Read: 77
--> gitlab.com/gitlab-org/gitlab-terminal.(*ioWrapper).Write() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/wrappers.go:148 +0x5e
--> io.copyBuffer() /usr/local/go/src/io/io.go:404 +0x282
--> gitlab.com/gitlab-org/gitlab-terminal.(*StreamProxy).proxy() /usr/local/go/src/io/io.go:364 +0xe4
Previous write: 76
--> gitlab.com/gitlab-org/gitlab-terminal.(*ioWrapper).Read() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/wrappers.go:173 +0x15e
--> io.copyBuffer() /usr/local/go/src/io/io.go:402 +0x143
--> gitlab.com/gitlab-org/gitlab-terminal.(*StreamProxy).proxy() /usr/local/go/src/io/io.go:364 +0xe4
Recorded 2 goroutines:
-> Goroutine 77
--> gitlab.com/gitlab-org/gitlab-terminal.(*StreamProxy).Serve() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/stream_proxy.go:23 +0x7e
--> gitlab.com/gitlab-org/gitlab-terminal.ProxyStream() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/terminal.go:59 +0x56a
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.terminalConn.Start.func2() /builds/gitlab-org/gitlab-runner/executors/docker/terminal.go:134 +0xbf
--> gitlab.com/gitlab-org/gitlab-runner/session/terminal.ProxyTerminal() /builds/gitlab-org/gitlab-runner/session/terminal/terminal.go:34 +0xc6
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.terminalConn.Start() /builds/gitlab-org/gitlab-runner/executors/docker/terminal.go:129 +0x7f9
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.(*terminalConn).Start() <autogenerated>:1 +0x101
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).execHandler() /builds/gitlab-org/gitlab-runner/session/session.go:173 +0x807
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).execHandler-fm() /builds/gitlab-org/gitlab-runner/session/session.go:142 +0x5f
--> net/http.HandlerFunc.ServeHTTP() /usr/local/go/src/net/http/server.go:2007 +0x51
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).withAuthorization.func1() /builds/gitlab-org/gitlab-runner/session/session.go:103 +0x432
--> net/http.HandlerFunc.ServeHTTP() /usr/local/go/src/net/http/server.go:2007 +0x51
--> github.com/gorilla/mux.(*Router).ServeHTTP() /go/pkg/mod/github.com/gorilla/mux@v1.3.1-0.20170228224354-599cba5e7b61/mux.go:114 +0x18a
--> net/http.serverHandler.ServeHTTP() /usr/local/go/src/net/http/server.go:2802 +0xce
--> net/http.(*conn).serve() /usr/local/go/src/net/http/server.go:1890 +0x837
-> Goroutine 76
--> gitlab.com/gitlab-org/gitlab-terminal.(*StreamProxy).Serve() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/stream_proxy.go:24 +0xce
--> gitlab.com/gitlab-org/gitlab-terminal.ProxyStream() /go/pkg/mod/gitlab.com/gitlab-org/gitlab-terminal@v0.0.0-20180924111848-5af59b871b1b/terminal.go:59 +0x56a
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.terminalConn.Start.func2() /builds/gitlab-org/gitlab-runner/executors/docker/terminal.go:134 +0xbf
--> gitlab.com/gitlab-org/gitlab-runner/session/terminal.ProxyTerminal() /builds/gitlab-org/gitlab-runner/session/terminal/terminal.go:34 +0xc6
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.terminalConn.Start() /builds/gitlab-org/gitlab-runner/executors/docker/terminal.go:129 +0x7f9
--> gitlab.com/gitlab-org/gitlab-runner/executors/docker.(*terminalConn).Start() <autogenerated>:1 +0x101
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).execHandler() /builds/gitlab-org/gitlab-runner/session/session.go:173 +0x807
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).execHandler-fm() /builds/gitlab-org/gitlab-runner/session/session.go:142 +0x5f
--> net/http.HandlerFunc.ServeHTTP() /usr/local/go/src/net/http/server.go:2007 +0x51
--> gitlab.com/gitlab-org/gitlab-runner/session.(*Session).withAuthorization.func1() /builds/gitlab-org/gitlab-runner/session/session.go:103 +0x432
--> net/http.HandlerFunc.ServeHTTP() /usr/local/go/src/net/http/server.go:2007 +0x51
--> github.com/gorilla/mux.(*Router).ServeHTTP() /go/pkg/mod/github.com/gorilla/mux@v1.3.1-0.20170228224354-599cba5e7b61/mux.go:114 +0x18a
--> net/http.serverHandler.ServeHTTP() /usr/local/go/src/net/http/server.go:2802 +0xce
--> net/http.(*conn).serve() /usr/local/go/src/net/http/server.go:1890 +0x837
-> RACE 8:
Write: 27
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*setupBuildPodFakeRoundTripper).RoundTrip() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:1859 +0x5c
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*setupBuildPodFakeRoundTripper).RoundTrip-fm() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:1858 +0x4f
--> k8s.io/client-go/rest/fake.roundTripperFunc.RoundTrip() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/fake/fake.go:41 +0x3d
--> net/http.send() /usr/local/go/src/net/http/client.go:250 +0x6a8
--> net/http.(*Client).send() /usr/local/go/src/net/http/client.go:174 +0x1ca
--> net/http.(*Client).do() /usr/local/go/src/net/http/client.go:641 +0x2cc
--> net/http.(*Client).Do() /usr/local/go/src/net/http/client.go:509 +0x42
--> k8s.io/client-go/rest.(*Request).request() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/request.go:732 +0x639
--> k8s.io/client-go/rest.(*Request).Do() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/request.go:804 +0xd5
--> k8s.io/client-go/kubernetes/typed/core/v1.(*services).Create() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/kubernetes/typed/core/v1/service.go:117 +0x179
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).createKubernetesService() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:1088 +0x175
Previous write: 26
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*setupBuildPodFakeRoundTripper).RoundTrip() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:1859 +0x5c
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*setupBuildPodFakeRoundTripper).RoundTrip-fm() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:1858 +0x4f
--> k8s.io/client-go/rest/fake.roundTripperFunc.RoundTrip() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/fake/fake.go:41 +0x3d
--> net/http.send() /usr/local/go/src/net/http/client.go:250 +0x6a8
--> net/http.(*Client).send() /usr/local/go/src/net/http/client.go:174 +0x1ca
--> net/http.(*Client).do() /usr/local/go/src/net/http/client.go:641 +0x2cc
--> net/http.(*Client).Do() /usr/local/go/src/net/http/client.go:509 +0x42
--> k8s.io/client-go/rest.(*Request).request() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/request.go:732 +0x639
--> k8s.io/client-go/rest.(*Request).Do() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/rest/request.go:804 +0xd5
--> k8s.io/client-go/kubernetes/typed/core/v1.(*services).Create() /go/pkg/mod/k8s.io/client-go@v11.0.1-0.20191004102930-01520b8320fc+incompatible/kubernetes/typed/core/v1/service.go:117 +0x179
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).createKubernetesService() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:1088 +0x175
Recorded 2 goroutines:
-> Goroutine 27
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).makePodProxyServices() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:1043 +0x61e
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).setupBuildPod() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:950 +0x11a0
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.TestSetupBuildPod.func48() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:3085 +0xa5f
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 26
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).makePodProxyServices() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:1043 +0x61e
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.(*executor).setupBuildPod() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes.go:950 +0x11a0
--> gitlab.com/gitlab-org/gitlab-runner/executors/kubernetes.TestSetupBuildPod.func48() /builds/gitlab-org/gitlab-runner/executors/kubernetes/kubernetes_test.go:3085 +0xa5f
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 9:
Write: 18
--> sync/atomic.CompareAndSwapInt32() /usr/local/go/src/runtime/race_amd64.s:293 +0xb
--> sync.(*Mutex).Lock() /usr/local/go/src/sync/mutex.go:74 +0x49
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:364 +0x61
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run.func1() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:193 +0x60
Previous read: 14
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:208 +0xa5f
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Recorded 2 goroutines:
-> Goroutine 18
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:192 +0x789
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 14
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:18 +0x1f8
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:91 +0xaf
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 10:
Read: 14
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:982 +0x359a
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:208 +0xa5f
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 18
--> sync/atomic.CompareAndSwapInt32() /usr/local/go/src/runtime/race_amd64.s:293 +0xb
--> sync.(*Mutex).Lock() /usr/local/go/src/sync/mutex.go:74 +0x49
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:364 +0x61
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run.func1() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:193 +0x60
Recorded 2 goroutines:
-> Goroutine 14
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:18 +0x1f8
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:91 +0xaf
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 18
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:192 +0x789
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 11:
Write: 18
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x7f8
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run.func1() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:193 +0x60
Previous read: 14
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:208 +0xa5f
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Recorded 2 goroutines:
-> Goroutine 18
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:192 +0x789
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 14
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:18 +0x1f8
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:91 +0xaf
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 12:
Read: 21
--> reflect.typedmemmove() /usr/local/go/src/runtime/mbarrier.go:177 +0x0
--> reflect.packEface() /usr/local/go/src/reflect/value.go:119 +0x103
--> reflect.valueInterface() /usr/local/go/src/reflect/value.go:1033 +0x16f
--> fmt.(*pp).printValue() /usr/local/go/src/reflect/value.go:1003 +0x38f7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:208 +0xa5f
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 22
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x79e
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run.func1() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:193 +0x60
Recorded 2 goroutines:
-> Goroutine 21
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:18 +0x1f8
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:91 +0xaf
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 22
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:192 +0x789
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 13:
Read: 21
--> reflect.Value.String() /usr/local/go/src/reflect/value.go:1845 +0x5d
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:761 +0x3156
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:869 +0xec7
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:810 +0x283f
--> fmt.(*pp).printValue() /usr/local/go/src/fmt/print.go:880 +0x25da
--> fmt.(*pp).printArg() /usr/local/go/src/fmt/print.go:716 +0x2ee
--> fmt.(*pp).doPrintf() /usr/local/go/src/fmt/print.go:1126 +0x912
--> fmt.Sprintf() /usr/local/go/src/fmt/print.go:219 +0x73
--> github.com/stretchr/testify/mock.Arguments.Diff() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:768 +0x1361
--> github.com/stretchr/testify/mock.(*Mock).findExpectedCall() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:287 +0x16a
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:366 +0xb3
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockKillWaiter).KillAndWait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_KillWaiter.go:14 +0x116
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:208 +0xa5f
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Previous write: 22
--> github.com/stretchr/testify/assert.CallerInfo() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/assert/assertions.go:147 +0x3c3
--> github.com/stretchr/testify/mock.(*Mock).MethodCalled() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:403 +0x57e
--> github.com/stretchr/testify/mock.(*Mock).Called() /go/pkg/mod/github.com/stretchr/testify@v1.6.1/mock/mock.go:356 +0x1e4
--> gitlab.com/gitlab-org/gitlab-runner/helpers/process.(*MockCommander).Wait() /builds/gitlab-org/gitlab-runner/helpers/process/mock_Commander.go:48 +0x7b
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run.func1() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:193 +0x60
Recorded 2 goroutines:
-> Goroutine 21
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:18 +0x1f8
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:91 +0xaf
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 22
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:192 +0x789
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.(*executor).Run() /builds/gitlab-org/gitlab-runner/executors/shell/shell.go:83 +0x214
--> gitlab.com/gitlab-org/gitlab-runner/executors/shell.TestExecutor_Run.func9.1() /builds/gitlab-org/gitlab-runner/executors/shell/shell_test.go:123 +0x484
--> gitlab.com/gitlab-org/gitlab-runner/shells/shellstest.OnEachShell.func1() /builds/gitlab-org/gitlab-runner/shells/shellstest/utils.go:21 +0xef
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> RACE 14:
Read: 19
--> gitlab.com/gitlab-org/gitlab-runner/helpers/trace.(*Buffer).writeRune() /builds/gitlab-org/gitlab-runner/helpers/trace/buffer.go:149 +0xfb
--> gitlab.com/gitlab-org/gitlab-runner/helpers/trace.(*Buffer).process() /builds/gitlab-org/gitlab-runner/helpers/trace/buffer.go:184 +0x152
Previous write: 18
--> gitlab.com/gitlab-org/gitlab-runner/network.(*clientJobTrace).setupLogLimit() /builds/gitlab-org/gitlab-runner/helpers/trace/buffer.go:50 +0xdf
--> gitlab.com/gitlab-org/gitlab-runner/network.(*clientJobTrace).start() /builds/gitlab-org/gitlab-runner/network/trace.go:149 +0xe8
--> gitlab.com/gitlab-org/gitlab-runner/network.TestSendPatchAbort() /builds/gitlab-org/gitlab-runner/network/trace_test.go:172 +0x848
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
Recorded 2 goroutines:
-> Goroutine 19
--> gitlab.com/gitlab-org/gitlab-runner/helpers/trace.New() /builds/gitlab-org/gitlab-runner/helpers/trace/buffer.go:209 +0x5e1
--> gitlab.com/gitlab-org/gitlab-runner/network.newJobTrace() /builds/gitlab-org/gitlab-runner/network/trace.go:384 +0x4b
--> gitlab.com/gitlab-org/gitlab-runner/network.TestSendPatchAbort() /builds/gitlab-org/gitlab-runner/network/trace_test.go:165 +0x737
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
-> Goroutine 18
--> testing.(*T).Run() /usr/local/go/src/testing/testing.go:960 +0x651
--> testing.runTests.func1() /usr/local/go/src/testing/testing.go:1202 +0xa6
--> testing.tRunner() /usr/local/go/src/testing/testing.go:909 +0x199
--> testing.runTests() /usr/local/go/src/testing/testing.go:1200 +0x521
--> testing.(*M).Run() /usr/local/go/src/testing/testing.go:1117 +0x2ff
--> main.main() _testmain.go:504 +0x347
Found races!
============
Number of reported races: 14
Defined races limit: 24
Limit exceeded? no
What's the best way to test this MR?
What are the relevant issue numbers?
Edited by Tomasz Maczukin