tailscale / tailscale/tailscale

TestNodeAddressIPFields test flake

Open
#7,008 0 comments 0 reactions 0 assignees View on GitHub
flaky-test
Dominant language
Go
Stars
36.5k
Forks
3.2k
Avg merge
1d 23h
Merged PRs (30d)
132

Description

See: https://github.com/tailscale/corp/actions/runs/3959306828/jobs/6781957315

Click to expand test log

```
panic: test timed out after 10m0s

goroutine 523 [running]:
testing.(*M).startAlarm.func1()
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:2036 +0xb4
created by time.goFunc
/home/ubuntu/.cache/tailscale-go/src/time/sleep.go:176 +0x48

goroutine 1 [chan receive, 9 minutes]:
testing.tRunner.func1()
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1412 +0x5dc
testing.tRunner(0xc0000e1ba0, 0xc0000d9aa8)
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1452 +0x1bc
testing.runTests(0xc000204a00?, {0x1190460, 0xd, 0xd}, {0x4?, 0xa?, 0x119bc40?})
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1844 +0x6d0
testing.(*M).Run(0xc000204a00)
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1726 +0x880
tailscale.com/tstest/integration.TestMain(0x0?)
/home/ubuntu/go/pkg/mod/tailscale.com@v1.1.1-0.20230118170823-aea251d42a2f/tstest/integration/integration_test.go:56 +0xd4
main.main()
_testmain.go:73 +0x308

goroutine 13 [syscall, 9 minutes]:
syscall.Syscall6(0xc000687a48?, 0xab958?, 0xc000687a58?, 0xacc18?, 0xc000687a88?, 0xb77c0?, 0xc000687aa8?)
/home/ubuntu/.cache/tailscale-go/src/syscall/syscall_linux.go:90 +0x34
os.(*Process).blockUntilWaitable(0xc0002d40f0)
/home/ubuntu/.cache/tailscale-go/src/os/wait_waitid.go:32 +0x7c
os.(*Process).wait(0xc0002d40f0)
/home/ubuntu/.cache/tailscale-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
/home/ubuntu/.cache/tailscale-go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc000556580)
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:599 +0x78
os/exec.(*Cmd).Run(0x1?)
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:437 +0x58
os/exec.(*Cmd).CombinedOutput(0xc000556580)
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:707 +0x218
tailscale.com/tstest/integration.(*testNode).MustUp(0xc0005340e0, {0x0, 0x0, 0x0?})
/home/ubuntu/go/pkg/mod/tailscale.com@v1.1.1-0.20230118170823-aea251d42a2f/tstest/integration/integration_test.go:841 +0x25c
tailscale.com/tstest/integration.TestNodeAddressIPFields(0xc000267520)
/home/ubuntu/go/pkg/mod/tailscale.com@v1.1.1-0.20230118170823-aea251d42a2f/tstest/integration/integration_test.go:306 +0x94
testing.tRunner(0xc000267520, 0xb6e308)
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1446 +0x18c
created by testing.(*T).Run
/home/ubuntu/.cache/tailscale-go/src/testing/testing.go:1493 +0x568

goroutine 497 [IO wait]:
io.copyBuffer({0xcaf220, 0xc00052c210}, {0xcaeea0, 0xc00055e010}, {0x0, 0x0, 0x0})
/home/ubuntu/.cache/tailscale-go/src/io/io.go:427 +0x1f0
io.Copy(...)
/home/ubuntu/.cache/tailscale-go/src/io/io.go:386
os/exec.(*Cmd).writerDescriptor.func1()
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:407 +0x60
os/exec.(*Cmd).Start.func1(0xc00054c040)
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:544 +0x38
created by os/exec.(*Cmd).Start
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:543 +0x988

goroutine 122 [IO wait, 9 minutes]:
internal/poll.runtime_pollWait(0xffffaeb5e4a8, 0x72)
/home/ubuntu/.cache/tailscale-go/src/runtime/netpoll.go:305 +0xa0
internal/poll.(*pollDesc).wait(0xc0007fe318, 0xc0007ee800?, 0x1)
/home/ubuntu/.cache/tailscale-go/src/internal/poll/fd_poll_runtime.go:84 +0xc0
internal/poll.(*pollDesc).waitRead(...)
/home/ubuntu/.cache/tailscale-go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc0007fe300, {0xc0007ee800, 0x200, 0x200})
/home/ubuntu/.cache/tailscale-go/src/internal/poll/fd_unix.go:167 +0x2f8
os.(*File).read(...)
/home/ubuntu/.cache/tailscale-go/src/os/file_posix.go:31
os.(*File).Read(0xc00033c160, {0xc0007ee800, 0x200, 0x200})
/home/ubuntu/.cache/tailscale-go/src/os/file.go:119 +0x9c
bytes.(*Buffer).ReadFrom(0xc000217380, {0xcaeea0, 0xc00033c160})
/home/ubuntu/.cache/tailscale-go/src/bytes/buffer.go:202 +0xec
io.copyBuffer({0xcad1e0, 0xc000217380}, {0xcaeea0, 0xc00033c160}, {0x0, 0x0, 0x0})
/home/ubuntu/.cache/tailscale-go/src/io/io.go:413 +0x158
io.Copy(...)
/home/ubuntu/.cache/tailscale-go/src/io/io.go:386
os/exec.(*Cmd).writerDescriptor.func1()
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:407 +0x60
os/exec.(*Cmd).Start.func1(0xc00031a1e0)
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:544 +0x38
created by os/exec.(*Cmd).Start
/home/ubuntu/.cache/tailscale-go/src/os/exec/exec.go:543 +0x988
FAIL tailscale.com/tstest/integration 600.146s
```

Contributor guide

Open the contributing guide

Research direction

Start with the integration test entry point TestNodeAddressIPFields and the MustUp call shown in the timeout stack trace. Reproduce the 10-minute timeout and inspect the integration test behavior around that call. Done means the test no longer flakes or hangs during repeated runs.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.