• k8s-merge-robot's avatar
    Merge pull request #26188 from brendandburns/test_main · c80f650b
    k8s-merge-robot authored
    Automatic merge from submit-queue
    
    Add a custom main instead of the standard test main, to reduce stack …
    
    Adds a custom test main handler (see: `TestMain` in https://golang.org/pkg/testing/ for details)
    
    Partial fix for https://github.com/kubernetes/kubernetes/issues/25965
    
    This does the standard timeout, but strips non-kubernetes stacks out of the stack trace (e.g. it filters things like:
    
    ```
    goroutine 466 [IO wait, 7 minutes]:
    net.runtime_pollWait(0x7fd74c4672c0, 0x72, 0xc821614000)
    	/usr/local/go/src/runtime/netpoll.go:160 +0x60
    net.(*pollDesc).Wait(0xc8215c21b0, 0x72, 0x0, 0x0)
    	/usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
    net.(*pollDesc).WaitRead(0xc8215c21b0, 0x0, 0x0)
    	/usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
    net.(*netFD).Read(0xc8215c2150, 0xc821614000, 0x1000, 0x1000, 0x0, 0x7fd74c491050, 0xc820014058)
    	/usr/local/go/src/net/fd_unix.go:250 +0x23a
    net.(*conn).Read(0xc820a5a090, 0xc821614000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    	/usr/local/go/src/net/net.go:172 +0xe4
    net/http.noteEOFReader.Read(0x7fd74c465258, 0xc820a5a090, 0xc8215f0068, 0xc821614000, 0x1000, 0x1000, 0x405773, 0x0, 0x0)
    	/usr/local/go/src/net/http/transport.go:1687 +0x67
    net/http.(*noteEOFReader).Read(0xc8215ae1a0, 0xc821614000, 0x1000, 0x1000, 0xc82159ad1d, 0x0, 0x0)
    	<autogenerated>:284 +0xd0
    bufio.(*Reader).fill(0xc8202a2b40)
    	/usr/local/go/src/bufio/bufio.go:97 +0x1e9
    bufio.(*Reader).Peek(0xc8202a2b40, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0)
    	/usr/local/go/src/bufio/bufio.go:132 +0xcc
    net/http.(*persistConn).readLoop(0xc8215f0000)
    	/usr/local/go/src/net/http/transport.go:1073 +0x177
    created by net/http.(*Transport).dialConn
    	/usr/local/go/src/net/http/transport.go:857 +0x10a6
    ```
    
    We may want to get even more aggressive in the future.
    
    @kubernetes/sig-testing 
    c80f650b
known-flags.txt 8.45 KB