Skip to content

Flaky test: Test/ADS_WatchState_StreamBreaks #8477

@arjan-bal

Description

@arjan-bal

The test hangs and reaches the timeout. Could be related to xDS client changes made in 1.74.

panic: test timed out after 7m0s
	running tests:
		Test (6m48s)
		Test/ADS_WatchState_StreamBreaks (6m45s)

goroutine 2089 [running]:
testing.(*M).startAlarm.func1()
	/opt/hostedtoolcache/go/1.24.5/x64/src/testing/testing.go:2484 +0x605
created by time.goFunc
	/opt/hostedtoolcache/go/1.24.5/x64/src/time/sleep.go:215 +0x45

goroutine 1 [chan receive, 6 minutes]:
testing.(*T).Run(0xc00032c380, {0x17dc842, 0x4}, 0x182e7c0)
	/opt/hostedtoolcache/go/1.24.5/x64/src/testing/testing.go:1859 +0x91e
testing.runTests.func1(0xc00032c380)
	/opt/hostedtoolcache/go/1.24.5/x64/src/internal/sync/mutex.go:149 +0x210
internal/sync.(*Mutex).Lock(0xc0004ec7d0)
	/opt/hostedtoolcache/go/1.24.5/x64/src/internal/sync/mutex.go:70 +0x55
sync.(*Mutex).Lock(0xc0004ec7d0)
	/opt/hostedtoolcache/go/1.24.5/x64/src/sync/mutex.go:46 +0x29
google.golang.org/grpc/xds/internal/clients/xdsclient.(*channelState).adsResourceRemoveUnsubscribedCacheEntries(0xc0007a6480, {{0x1811efa, 0x35}, {0x17e8202, 0x10}, 0x1, {0x1970d60, 0x23b0280}})
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/xdsclient.go:447 +0xcc
google.golang.org/grpc/xds/internal/clients/xdsclient.(*xdsChannel).onRequest(0xc0007c6280, {0x1811efa, 0x35})
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/channel.go:276 +0x32f
google.golang.org/grpc/xds/internal/clients/xdsclient.(*adsStreamImpl).sendMessageLocked(0xc000523d00, {0x1985410, 0xc000a10090}, {0xc00079e2c0, 0x2, 0x2}, {0x1811efa, 0x35}, {0x199fae8, 0x1}, ...)
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/ads_stream.go:451 +0x442
google.golang.org/grpc/xds/internal/clients/xdsclient.(*adsStreamImpl).sendMessageIfWritePendingLocked(0xc000523d00, {0x1985410, 0xc000a10090}, {{0x1811efa, 0x35}, {0x17e8202, 0x10}, 0x1, {0x1970d60, 0x23b0280}}, ...)
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/ads_stream.go:406 +0x3f0
google.golang.org/grpc/xds/internal/clients/xdsclient.(*adsStreamImpl).sendNew(0xc000523d00, {0x1985410, 0xc000a10090}, {{0x1811efa, 0x35}, {0x17e8202, 0x10}, 0x1, {0x1970d60, 0x23b0280}})
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/ads_stream.go:330 +0x21d
google.golang.org/grpc/xds/internal/clients/xdsclient.(*adsStreamImpl).send(0xc000523d00, {0x1989a68, 0xc0007c62d0})
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/ads_stream.go:293 +0x2d1
created by google.golang.org/grpc/xds/internal/clients/xdsclient.(*adsStreamImpl).runner in goroutine 2100
	/home/runner/work/grpc-go/grpc-go/xds/internal/clients/xdsclient/ads_stream.go:230 +0x165

goroutine 2104 [select, 2 minutes]:
google.golang.org/grpc/internal/transport.(*http2Client).keepalive(0xc0004bafc8)
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:1729 +0x2fd
created by google.golang.org/grpc/internal/transport.NewHTTP2Client in goroutine 2102
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:401 +0x327d

goroutine 2105 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7f0a2434c990, 0x72)
	/opt/hostedtoolcache/go/1.24.5/x64/src/runtime/netpoll.go:351 +0x85
internal/poll.(*pollDesc).wait(0xc0006ce120, 0x72, 0x0)
	/opt/hostedtoolcache/go/1.24.5/x64/src/internal/poll/fd_poll_runtime.go:84 +0xb1
internal/poll.(*pollDesc).waitRead(...)
	/opt/hostedtoolcache/go/1.24.5/x64/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc0006ce100, {0xc00029a000, 0x8000, 0x8000})
	/opt/hostedtoolcache/go/1.24.5/x64/src/internal/poll/fd_unix.go:165 +0x453
net.(*netFD).Read(0xc0006ce100, {0xc00029a000, 0x8000, 0x8000})
	/opt/hostedtoolcache/go/1.24.5/x64/src/net/fd_posix.go:55 +0x4b
net.(*conn).Read(0xc00007a0d8, {0xc00029a000, 0x8000, 0x8000})
	/opt/hostedtoolcache/go/1.24.5/x64/src/net/net.go:194 +0xad
bufio.(*Reader).Read(0xc000a665a0, {0xc0009fe040, 0x9, 0x9})
	/opt/hostedtoolcache/go/1.24.5/x64/src/bufio/bufio.go:245 +0x4b8
io.ReadAtLeast({0x19713c0, 0xc000a665a0}, {0xc0009fe040, 0x9, 0x9}, 0x9)
	/opt/hostedtoolcache/go/1.24.5/x64/src/io/io.go:335 +0xcb
io.ReadFull(...)
	/opt/hostedtoolcache/go/1.24.5/x64/src/io/io.go:354
golang.org/x/net/http2.readFrameHeader({0xc0009fe040, 0x9, 0x9}, {0x19713c0, 0xc000a665a0})
	/home/runner/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:242 +0x9a
golang.org/x/net/http2.(*Framer).ReadFrame(0xc0009fe000)
	/home/runner/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:506 +0xed
google.golang.org/grpc/internal/transport.(*http2Client).reader(0xc0004bafc8, 0xc000788540)
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:1656 +0x2dc
created by google.golang.org/grpc/internal/transport.NewHTTP2Client in goroutine 2102
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:411 +0x3359

goroutine 2106 [select, 2 minutes]:
google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc0000e6800, 0x1)
	/home/runner/work/grpc-go/grpc-go/internal/transport/controlbuf.go:425 +0x165
google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc0001b6380)
	/home/runner/work/grpc-go/grpc-go/internal/transport/controlbuf.go:590 +0x15b
google.golang.org/grpc/internal/transport.NewHTTP2Client.func6()
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:469 +0x230
created by google.golang.org/grpc/internal/transport.NewHTTP2Client in goroutine 2102
	/home/runner/work/grpc-go/grpc-go/internal/transport/http2_client.go:467 +0x3db1
FAIL	google.golang.org/grpc/xds/internal/clients/xdsclient/test	420.039s

Sample run: https://github.com/grpc/grpc-go/actions/runs/16602641159/job/46966231424?pr=8342

Metadata

Metadata

Assignees

Labels

Area: xDSIncludes everything xDS related, including LB policies used with xDS.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions