Skip to content

flake: FakeAgentAPI.UpdateStats goroutines on top of stack #13882

Closed
@dannykopping

Description

@dannykopping

https://github.com/coder/coder/actions/runs/9906150444/job/27368130548?pr=13881

=== Failed
=== FAIL: agent  (0.00s)
PASS
goleak: Errors on successful test run: found unexpected goroutines:
[Goroutine 36557 in state chan send, with github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats on top of the stack:
github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats(0xc0005ab380, {0x7ff60dc7c558, 0xc006095b08}, 0xc002712ab0)
	C:/a/coder/coder/agent/agenttest/client.go:213 +0x155
github.com/coder/coder/v2/agent/proto.DRPCAgentDescription.Method.func3({0x7ff60d9c25e0?, 0xc0005ab380?}, {0x7ff60dc7c558?, 0xc006095b08?}, {0x7ff60d8ceb20?, 0xc002712ab0?}, {0xc00364ad38?, 0xc007047d40?})
	C:/a/coder/coder/agent/proto/agent_drpc.pb.go:221 +0xcb
storj.io/drpc/drpcmux.(*Mux).HandleRPC(0x1?, {0x7ff60dc7e020, 0xc006095b08}, {0xc00594b5c0, 0x21})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcmux/handle_rpc.go:33 +0x207
storj.io/drpc/drpcserver.(*Server).handleRPC(0xc00364ac40?, 0xc006095b08, {0xc00594b5c0?, 0x7ff60e7c60c0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:124 +0x36
storj.io/drpc/drpcserver.(*Server).ServeOne(0xc00069af80, {0x7ff60dc7c520, 0xc00026b410}, {0x1dfd2bd7260?, 0xc003b16458?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:66 +0x1d2
storj.io/drpc/drpcserver.(*Server).Serve.func2({0x7ff60dc7c520?, 0xc00026b410?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:114 +0x57
storj.io/drpc/drpcctx.(*Tracker).track(0xc00026b410, 0x1?)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:35 +0x25
created by storj.io/drpc/drpcctx.(*Tracker).Run in goroutine 723
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:30 +0x79
 Goroutine 723 in state semacquire, with sync.runtime_Semacquire on top of the stack:
sync.runtime_Semacquire(0x7ff60dc69dc0?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0x7ff60d43cd42?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/sync/waitgroup.go:116 +0x48
storj.io/drpc/drpcctx.(*Tracker).Wait(...)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:43
storj.io/drpc/drpcserver.(*Server).Serve(0xc00069af80, {0x7ff60dc7b598, 0xc000b8c360}, {0x7ff60dc78520, 0xc001518080})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:90 +0x3f1
github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC.func2()
	C:/a/coder/coder/agent/agenttest/client.go:118 +0x2e
created by github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC in goroutine 124
	C:/a/coder/coder/agent/agenttest/client.go:117 +0x33f
 Goroutine 637 in state semacquire, with sync.runtime_Semacquire on top of the stack:
sync.runtime_Semacquire(0x7ff60dc69dc0?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0x7ff60d43cd42?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/sync/waitgroup.go:116 +0x48
storj.io/drpc/drpcctx.(*Tracker).Wait(...)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:43
storj.io/drpc/drpcserver.(*Server).Serve(0xc000446c00, {0x7ff60dc7b598, 0xc0005a96e0}, {0x7ff60dc78520, 0xc00158a180})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:90 +0x3f1
github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC.func2()
	C:/a/coder/coder/agent/agenttest/client.go:118 +0x2e
created by github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC in goroutine 758
	C:/a/coder/coder/agent/agenttest/client.go:117 +0x33f
 Goroutine 1315 in state semacquire, with sync.runtime_Semacquire on top of the stack:
sync.runtime_Semacquire(0x7ff60dc69dc0?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0x7ff60d43cd42?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/sync/waitgroup.go:116 +0x48
storj.io/drpc/drpcctx.(*Tracker).Wait(...)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:43
storj.io/drpc/drpcserver.(*Server).Serve(0xc00069a000, {0x7ff60dc7b598, 0xc00063bc20}, {0x7ff60dc78520, 0xc00158b240})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:90 +0x3f1
github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC.func2()
	C:/a/coder/coder/agent/agenttest/client.go:118 +0x2e
created by github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC in goroutine 1201
	C:/a/coder/coder/agent/agenttest/client.go:117 +0x33f
 Goroutine 2610 in state semacquire, with sync.runtime_Semacquire on top of the stack:
sync.runtime_Semacquire(0x7ff60dc69dc0?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0x7ff60d43cd42?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/sync/waitgroup.go:116 +0x48
storj.io/drpc/drpcctx.(*Tracker).Wait(...)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:43
storj.io/drpc/drpcserver.(*Server).Serve(0xc000a10500, {0x7ff60dc7b598, 0xc0021096e0}, {0x7ff60dc78520, 0xc0012ba2c0})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:90 +0x3f1
github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC.func2()
	C:/a/coder/coder/agent/agenttest/client.go:118 +0x2e
created by github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC in goroutine 1802
	C:/a/coder/coder/agent/agenttest/client.go:117 +0x33f
 Goroutine 36595 in state chan send, with github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats on top of the stack:
github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats(0xc002099930, {0x7ff60dc7c558, 0xc005418248}, 0xc007047f20)
	C:/a/coder/coder/agent/agenttest/client.go:213 +0x155
github.com/coder/coder/v2/agent/proto.DRPCAgentDescription.Method.func3({0x7ff60d9c25e0?, 0xc002099930?}, {0x7ff60dc7c558?, 0xc005418248?}, {0x7ff60d8ceb20?, 0xc007047f20?}, {0xc002c4ad38?, 0xc0040371d0?})
	C:/a/coder/coder/agent/proto/agent_drpc.pb.go:221 +0xcb
storj.io/drpc/drpcmux.(*Mux).HandleRPC(0x1?, {0x7ff60dc7e020, 0xc005418248}, {0xc003fc00c0, 0x21})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcmux/handle_rpc.go:33 +0x207
storj.io/drpc/drpcserver.(*Server).handleRPC(0xc002c4ac40?, 0xc005418248, {0xc003fc00c0?, 0x7ff60e7c60c0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:124 +0x36
storj.io/drpc/drpcserver.(*Server).ServeOne(0xc0049a5d80, {0x7ff60dc7c520, 0xc001e8cdb0}, {0x1dfd2bd7260?, 0xc002914f98?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:66 +0x1d2
storj.io/drpc/drpcserver.(*Server).Serve.func2({0x7ff60dc7c520?, 0xc001e8cdb0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:114 +0x57
storj.io/drpc/drpcctx.(*Tracker).track(0xc001e8cdb0, 0xc003b82060?)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:35 +0x25
created by storj.io/drpc/drpcctx.(*Tracker).Run in goroutine 11415
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:30 +0x79
 Goroutine 35947 in state chan send, with github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats on top of the stack:
github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats(0xc00085f5f0, {0x7ff60dc7c558, 0xc006cf0248}, 0xc006cd1c50)
	C:/a/coder/coder/agent/agenttest/client.go:213 +0x155
github.com/coder/coder/v2/agent/proto.DRPCAgentDescription.Method.func3({0x7ff60d9c25e0?, 0xc00085f5f0?}, {0x7ff60dc7c558?, 0xc006cf0248?}, {0x7ff60d8ceb20?, 0xc006cd1c50?}, {0xc006656ef8?, 0xc0068e2450?})
	C:/a/coder/coder/agent/proto/agent_drpc.pb.go:221 +0xcb
storj.io/drpc/drpcmux.(*Mux).HandleRPC(0x1?, {0x7ff60dc7e020, 0xc006cf0248}, {0xc006aea7e0, 0x21})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcmux/handle_rpc.go:33 +0x207
storj.io/drpc/drpcserver.(*Server).handleRPC(0xc006656e00?, 0xc006cf0248, {0xc006aea7e0?, 0x7ff60e7c60c0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:124 +0x36
storj.io/drpc/drpcserver.(*Server).ServeOne(0xc000a10500, {0x7ff60dc7c520, 0xc001315a70}, {0x1dfd2bd7260?, 0xc00014fe98?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:66 +0x1d2
storj.io/drpc/drpcserver.(*Server).Serve.func2({0x7ff60dc7c520?, 0xc001315a70?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:114 +0x57
storj.io/drpc/drpcctx.(*Tracker).track(0xc001315a70, 0xc0065d2540?)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:35 +0x25
created by storj.io/drpc/drpcctx.(*Tracker).Run in goroutine 2610
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:30 +0x79
 Goroutine 11415 in state semacquire, with sync.runtime_Semacquire on top of the stack:
sync.runtime_Semacquire(0x7ff60dc69dc0?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0x7ff60d43cd42?)
	C:/hostedtoolcache/windows/go/1.22.5/x64/src/sync/waitgroup.go:116 +0x48
storj.io/drpc/drpcctx.(*Tracker).Wait(...)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:43
storj.io/drpc/drpcserver.(*Server).Serve(0xc0049a5d80, {0x7ff60dc7b598, 0xc004609e90}, {0x7ff60dc78520, 0xc0037ff500})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:90 +0x3f1
github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC.func2()
	C:/a/coder/coder/agent/agenttest/client.go:118 +0x2e
created by github.com/coder/coder/v2/agent/agenttest.(*Client).ConnectRPC in goroutine 11447
	C:/a/coder/coder/agent/agenttest/client.go:117 +0x33f
 Goroutine 35993 in state chan send, with github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats on top of the stack:
github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats(0xc0005aa750, {0x7ff60dc7c558, 0xc006349d48}, 0xc006cd1bf0)
	C:/a/coder/coder/agent/agenttest/client.go:213 +0x155
github.com/coder/coder/v2/agent/proto.DRPCAgentDescription.Method.func3({0x7ff60d9c25e0?, 0xc0005aa750?}, {0x7ff60dc7c558?, 0xc006349d48?}, {0x7ff60d8ceb20?, 0xc006cd1bf0?}, {0xc005e1c638?, 0xc006b044e0?})
	C:/a/coder/coder/agent/proto/agent_drpc.pb.go:221 +0xcb
storj.io/drpc/drpcmux.(*Mux).HandleRPC(0x1?, {0x7ff60dc7e020, 0xc006349d48}, {0xc006aea780, 0x21})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcmux/handle_rpc.go:33 +0x207
storj.io/drpc/drpcserver.(*Server).handleRPC(0xc005e1c540?, 0xc006349d48, {0xc006aea780?, 0x7ff60e7c60c0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:124 +0x36
storj.io/drpc/drpcserver.(*Server).ServeOne(0xc00069a000, {0x7ff60dc7c520, 0xc00063bd70}, {0x1dfd2bd7260?, 0xc004893358?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:66 +0x1d2
storj.io/drpc/drpcserver.(*Server).Serve.func2({0x7ff60dc7c520?, 0xc00063bd70?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:114 +0x57
storj.io/drpc/drpcctx.(*Tracker).track(0xc00063bd70, 0xc006b4d740?)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:35 +0x25
created by storj.io/drpc/drpcctx.(*Tracker).Run in goroutine 1315
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:30 +0x79
 Goroutine 36347 in state chan send, with github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats on top of the stack:
github.com/coder/coder/v2/agent/agenttest.(*FakeAgentAPI).UpdateStats(0xc000a08820, {0x7ff60dc7c558, 0xc006eacb48}, 0xc006f8d620)
	C:/a/coder/coder/agent/agenttest/client.go:213 +0x155
github.com/coder/coder/v2/agent/proto.DRPCAgentDescription.Method.func3({0x7ff60d9c25e0?, 0xc000a08820?}, {0x7ff60dc7c558?, 0xc006eacb48?}, {0x7ff60d8ceb20?, 0xc006f8d620?}, {0xc004d24478?, 0xc006f8d5c0?})
	C:/a/coder/coder/agent/proto/agent_drpc.pb.go:221 +0xcb
storj.io/drpc/drpcmux.(*Mux).HandleRPC(0x1?, {0x7ff60dc7e020, 0xc006eacb48}, {0xc00[590](https://github.com/coder/coder/actions/runs/9906150444/job/27368130548?pr=13881#step:5:591)64b0, 0x21})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcmux/handle_rpc.go:33 +0x207
storj.io/drpc/drpcserver.(*Server).handleRPC(0xc004d24380?, 0xc006eacb48, {0xc0059064b0?, 0x7ff60e7c60c0?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:124 +0x36
storj.io/drpc/drpcserver.(*Server).ServeOne(0xc000446c00, {0x7ff60dc7c520, 0xc000b8c120}, {0x1dfd2bd7260?, 0xc006c98818?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:66 +0x1d2
storj.io/drpc/drpcserver.(*Server).Serve.func2({0x7ff60dc7c520?, 0xc000b8c120?})
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcserver/server.go:114 +0x57
storj.io/drpc/drpcctx.(*Tracker).track(0xc000b8c120, 0xc004668380?)
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:35 +0x25
created by storj.io/drpc/drpcctx.(*Tracker).Run in goroutine 637
	C:/Users/runneradmin/go/pkg/mod/storj.io/drpc@v0.0.33/drpcctx/tracker.go:30 +0x79
]
FAIL	github.com/coder/coder/v2/agent	51.227s

Metadata

Metadata

Assignees

No one assigned

    Labels

    s4Internal bugs (e.g. test flakes), extreme edge cases, and bug risks

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions