Skip to content

testing/synctest: SEGV when running test in race mode #76691

@ella-chao

Description

@ella-chao

Go version

go1.25.3 linux/arm64

Output of go env in your module/workspace:

AR='ar'
CC='gcc'
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_ENABLED='1'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
CXX='g++'
GCCGO='gccgo'
GO111MODULE=''
GOARCH='arm64'
GOARM64='v8.0'
GOAUTH='netrc'
GOBIN=''
GOCACHE='/home/ubuntu/.cache/go-build'
GOCACHEPROG=''
GODEBUG=''
GOENV='/home/ubuntu/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFIPS140='off'
GOFLAGS=''
GOGCCFLAGS='-fPIC -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build2656902165=/tmp/go-build -gno-record-gcc-switches'
GOHOSTARCH='arm64'
GOHOSTOS='linux'
GOINSECURE=''
GOMOD='/opt/actions-runner/_work/warpstream/warpstream/go.mod'
GOMODCACHE='/home/ubuntu/go/pkg/mod'
GONOPROXY='github.com/warpstreamlabs [REDACTED]'
GONOSUMDB='github.com/warpstreamlabs [REDACTED]'
GOOS='linux'
GOPATH='/home/ubuntu/go'
GOPRIVATE='github.com/warpstreamlabs [REDACTED]'
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/opt/actions-runner/_work/_tool/go/1.25.3/arm64'
GOSUMDB='sum.golang.org'
GOTELEMETRY='local'
GOTELEMETRYDIR='/home/ubuntu/.config/go/telemetry'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/opt/actions-runner/_work/_tool/go/1.25.3/arm64/pkg/tool/linux_arm64'
GOVCS=''
GOVERSION='go1.25.3'
GOWORK=''
PKG_CONFIG='pkg-config'

What did you do?

We have a complex integration test that uses synctest that would occasionally crash with SIGSEGV: segmentation violation when run using go test -vet off -race -count 1 -p 1 -timeout 5m0s. Unfortunately the test cannot be shared and we have yet to come up with a minimal reproducer.

This has not happen when the test is run without synctest in race mode or with synctest but not in race mode.

What did you see happen?

Stacktraces from two instances of the crash can be found here https://gist.github.com/ella-chao/f487923e491329d17fe26112ca5cd57c

What did you expect to see?

No crashes

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugReportIssues describing a possible bug in the Go implementation.WaitingForInfoIssue is not actionable because of missing required information, which needs to be provided.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions