Skip to content

os: timeout in TestClosedPipeRace under race detector on Windows #37408

Closed
@bcmills

Description

@bcmills
#!watchflakes
post <- pkg == "os" && test == "TestClosedPipeRace" && `panic: test timed out`

2020-02-23T17:58:14-b0863ce/windows-amd64-2008

It's not obvious to me whether this is a deadlock or livelock in TestClosedPipeRace itself, or a timeout due to some other condition.

##### Testing race detector
ok  	runtime/race	15.018s
ok  	flag	1.205s
ok  	net	1.125s
panic: test timed out after 10m0s

goroutine 10 [running]:
testing.(*M).startAlarm.func1()
	C:/workdir/go/src/testing/testing.go:1479 +0x123
created by time.goFunc
	C:/workdir/go/src/time/sleep.go:168 +0x59

goroutine 1 [chan receive]:
testing.(*T).Run(0xc0000a4000, 0x68b9c3, 0x17, 0x6957c8, 0x1)
	C:/workdir/go/src/testing/testing.go:1044 +0x6a0
testing.runTests.func1(0xc0000a4000)
	C:/workdir/go/src/testing/testing.go:1300 +0xae
testing.tRunner(0xc0000a4000, 0xc00006bd38)
	C:/workdir/go/src/testing/testing.go:992 +0x1f3
testing.runTests(0xc000004580, 0x81bda0, 0x7d, 0x7d, 0xbf8cced459d27940, 0x8bb2f623c1, 0x81efc0, 0x564401)
	C:/workdir/go/src/testing/testing.go:1298 +0x587
testing.(*M).Run(0xc000072080, 0x0)
	C:/workdir/go/src/testing/testing.go:1210 +0x35b
main.main()
	_testmain.go:322 +0x22b

goroutine 8 [syscall, locked to thread]:
syscall.Syscall6(0x76de1f30, 0x5, 0x108, 0xc000200000, 0x20001, 0xc000063ae4, 0x0, 0x0, 0x0, 0x0, ...)
	C:/workdir/go/src/runtime/syscall_windows.go:201 +0xf2
syscall.WriteFile(0x108, 0xc000200000, 0x20001, 0x20001, 0xc000063ae4, 0x0, 0xc00006d850, 0xc000063b00)
	C:/workdir/go/src/syscall/zsyscall_windows.go:329 +0x102
syscall.Write(0x108, 0xc000200000, 0x20001, 0x20001, 0x4, 0x685638, 0x4)
	C:/workdir/go/src/syscall/syscall_windows.go:369 +0x94
internal/poll.(*FD).Write(0xc00006d680, 0xc000200000, 0x20001, 0x20001, 0x0, 0x0, 0x0)
	C:/workdir/go/src/internal/poll/fd_windows.go:706 +0x2be
os.(*File).write(...)
	C:/workdir/go/src/os/file_windows.go:237
os.(*File).Write(0xc000006058, 0xc000200000, 0x20001, 0x20001, 0xc000006058, 0xc0000a4240, 0xc00004a660)
	C:/workdir/go/src/os/file.go:153 +0xae
os_test.testClosedPipeRace(0xc0000a4240, 0xc000039e00)
	C:/workdir/go/src/os/pipe_test.go:182 +0x5cb
os_test.TestClosedPipeRaceWrite(0xc0000a4240)
	C:/workdir/go/src/os/pipe_test.go:200 +0x45
testing.tRunner(0xc0000a4240, 0x6957c8)
	C:/workdir/go/src/testing/testing.go:992 +0x1f3
created by testing.(*T).Run
	C:/workdir/go/src/testing/testing.go:1043 +0x668

goroutine 9 [semacquire]:
internal/poll.runtime_Semacquire(0xc00006d8a8)
	C:/workdir/go/src/runtime/sema.go:61 +0x49
internal/poll.(*FD).Close(0xc00006d680, 0x447b5f, 0x50)
	C:/workdir/go/src/internal/poll/fd_windows.go:475 +0xce
os.(*file).close(0xc00006d680, 0x0, 0x0)
	C:/workdir/go/src/os/file_windows.go:205 +0x85
os.(*File).Close(...)
	C:/workdir/go/src/os/file_windows.go:193
os_test.testClosedPipeRace.func1(0x0, 0xc000006050, 0xc000006058, 0xc0000a4240)
	C:/workdir/go/src/os/pipe_test.go:171 +0x144
created by os_test.testClosedPipeRace
	C:/workdir/go/src/os/pipe_test.go:161 +0x1af
FAIL	os	600.044s

CC @ianlancetaylor

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.RaceDetectorWaitingForInfoIssue is not actionable because of missing required information, which needs to be provided.

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions