Go version
go version go1.26-devel_5a56d8848b Mon Aug 18 12:15:08 2025 -0700 linux/amd64
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=''
GOAMD64='v1'
GOARCH='amd64'
GOAUTH='netrc'
GOBIN=''
GOCACHE='/usr/local/google/home/stapelberg/.cache/go-build'
GOCACHEPROG=''
GODEBUG=''
GOENV='/usr/local/google/home/stapelberg/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFIPS140='off'
GOFLAGS=''
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build3689765317=/tmp/go-build -gno-record-gcc-switches'
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMOD='/usr/local/google/home/stapelberg/x/exp/go.mod'
GOMODCACHE='/usr/local/google/home/stapelberg/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/usr/local/google/home/stapelberg/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/google/home/stapelberg/upstream-go'
GOSUMDB='sum.golang.org'
GOTELEMETRY='local'
GOTELEMETRYDIR='/usr/local/google/home/stapelberg/.config/go/telemetry'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/google/home/stapelberg/upstream-go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.26-devel_5a56d8848b Mon Aug 18 12:15:08 2025 -0700'
GOWORK=''
PKG_CONFIG='pkg-config'
What did you do?
I ran go test -v ./...
in a clean checkout of the x/exp repository (git revision 42675adae3e697041d19b22cb15349e9c361f430).
What did you see happen?
=== RUN TestHeap
--- PASS: TestHeap (0.00s)
=== RUN TestPanicEvent
--- PASS: TestPanicEvent (0.00s)
=== RUN TestQueue
--- PASS: TestQueue (0.00s)
=== RUN TestFlightRecorderDoubleStart
panic: test timed out after 10m0s
running tests:
TestFlightRecorderDoubleStart (10m0s)
goroutine 17 [running]:
testing.(*M).startAlarm.func1()
/home/stapelberg/upstream-go/src/testing/testing.go:2682 +0x34b
created by time.goFunc
/home/stapelberg/upstream-go/src/time/sleep.go:215 +0x2d
goroutine 1 [chan receive]:
testing.(*T).Run(0xc000007500, {0x65d43d?, 0xc0000b0b30?}, 0x66a3e8)
/home/stapelberg/upstream-go/src/testing/testing.go:2005 +0x485
testing.runTests.func1(0xc000007500)
/home/stapelberg/upstream-go/src/testing/testing.go:2477 +0x37
testing.tRunner(0xc000007500, 0xc0000b0c70)
/home/stapelberg/upstream-go/src/testing/testing.go:1934 +0xea
testing.runTests(0xc0000100d8, {0x8188c0, 0xe, 0xe}, {0x7?, 0xc0000be940?, 0x8263e0?})
/home/stapelberg/upstream-go/src/testing/testing.go:2475 +0x494
testing.(*M).Run(0xc0000b41e0)
/home/stapelberg/upstream-go/src/testing/testing.go:2337 +0x633
main.main()
_testmain.go:75 +0x9b
goroutine 9 [semacquire]:
runtime.StopTrace(...)
/home/stapelberg/upstream-go/src/runtime/trace.go:325
runtime/trace.(*traceMultiplexer).removingSubscriber(0x8262e0)
/home/stapelberg/upstream-go/src/runtime/trace/subscribe.go:126 +0x36
runtime/trace.(*traceMultiplexer).unsubscribeTraceStartWriter(0x8262e0)
/home/stapelberg/upstream-go/src/runtime/trace/subscribe.go:93 +0x72
runtime/trace.Stop(...)
/home/stapelberg/upstream-go/src/runtime/trace/trace.go:125
golang.org/x/exp/trace.(*FlightRecorder).Stop(0xc000034180)
/home/stapelberg/x/exp/trace/flightrecorder.go:249 +0x38
golang.org/x/exp/trace_test.TestFlightRecorderDoubleStart(0xc000007dc0)
/home/stapelberg/x/exp/trace/flightrecorder_test.go:34 +0xdf
testing.tRunner(0xc000007dc0, 0x66a3e8)
/home/stapelberg/upstream-go/src/testing/testing.go:1934 +0xea
created by testing.(*T).Run in goroutine 1
/home/stapelberg/upstream-go/src/testing/testing.go:1997 +0x465
goroutine 12 [sync.Mutex.Lock]:
internal/sync.runtime_SemacquireMutex(0x1?, 0x1?, 0x0?)
/home/stapelberg/upstream-go/src/runtime/sema.go:95 +0x25
internal/sync.(*Mutex).lockSlow(0x8262e0)
/home/stapelberg/upstream-go/src/internal/sync/mutex.go:149 +0x15d
internal/sync.(*Mutex).Lock(...)
/home/stapelberg/upstream-go/src/internal/sync/mutex.go:70
sync.(*Mutex).Lock(...)
/home/stapelberg/upstream-go/src/sync/mutex.go:46
runtime/trace.(*traceMultiplexer).unsubscribeTraceStartWriter(0x8262e0)
/home/stapelberg/upstream-go/src/runtime/trace/subscribe.go:90 +0x45
runtime/trace.Stop(...)
/home/stapelberg/upstream-go/src/runtime/trace/trace.go:125
golang.org/x/exp/trace.(*recorder).Write.func1()
/home/stapelberg/x/exp/trace/flightrecorder.go:127 +0x55
golang.org/x/exp/trace.(*recorder).Write(0xc0000283d0, {0xc0003c0000, 0x10, 0x10})
/home/stapelberg/x/exp/trace/flightrecorder.go:139 +0x2e8
runtime/trace.(*traceMultiplexer).startLocked.func1()
/home/stapelberg/upstream-go/src/runtime/trace/subscribe.go:160 +0x64
created by runtime/trace.(*traceMultiplexer).startLocked in goroutine 9
/home/stapelberg/upstream-go/src/runtime/trace/subscribe.go:157 +0x132
FAIL golang.org/x/exp/trace 600.109s
? golang.org/x/exp/trace/internal/raw [no test files]
? golang.org/x/exp/trace/internal/testgen [no test files]
? golang.org/x/exp/trace/internal/testtrace [no test files]
? golang.org/x/exp/trace/internal/tracev1 [no test files]
=== RUN TestSpecs
--- PASS: TestSpecs (0.00s)
PASS
ok golang.org/x/exp/trace/internal/tracev2 0.005s
? golang.org/x/exp/trace/internal/version [no test files]
FAIL
What did you expect to see?
“PASS” :)
Instead, since https://go.dev/cl/693398, the tests time out.
Comment From: gabyhelp
Related Issues
- runtime,misc/cgo/test: timeout in TestSetgidStress on linux-amd64 #54787 (closed)
- cmd/go: tests timing out on linux-amd64 #21850 (closed)
- runtime: tests timing out #5025 (closed)
- runtime: waitforsingleobject wait_failed #65255 (closed)
- cmd/cgo/internal/testsanitizers: occasional timeout panic #72996
- x/net/ipv6: apparent deadlock in TestPacketConnConcurrentReadWriteUnicast on darwin/amd64 #50455 (closed)
- cmd/go: `go test` deadlocked without enforcing timeouts when killed with ^C #60203 (closed)
- net: TestAcceptTimeout still flaky #17948 (closed)
- runtime: test hung in TestGdbAutotmpTypes #37366
- build: test timeouts / flakes (TestCgoPprofPIE, TestCgoExternalThreadSIGPROF) #18038 (closed)
(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)
Comment From: gopherbot
Change https://go.dev/cl/697417 mentions this issue: trace: handle end-of-generation in flight recorder