siddhesh…@gmail.com
https://groups.google.com/g/golang-nuts/c/EHdReKpn7RM
unread,Aug 23, 2020, 3:06:18 AM (3 days ago) to golan…@googlegroups.comHi All,
We saw an issue with our process running in k8s on ubuntu 18.04.Most of the go routines are stuck for several minutes in http/http2 net code.
Have you seen similar issues ?
goroutine 2800143 [select, 324 minutes]: net/http.(*persistConn).readLoop(0xc00187d440) /usr/local/go/src/net/http/transport.go:2032 +0x999 created by net/http.(*Transport).dialConn /usr/local/go/src/net/http/transport.go:1580 +0xb0d goroutine 2738894 [IO wait, 352 minutes]: internal/poll.runtime_pollWait(0x7f5b61b280c0, 0x72, 0xffffffffffffffff) /usr/local/go/src/runtime/netpoll.go:184 +0x55 internal/poll.(*pollDesc).wait(0xc0017e7e18, 0x72, 0x1000, 0x1000, 0xffffffffffffffff) /usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(…) /usr/local/go/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc0017e7e00, 0xc0044a9000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /usr/local/go/src/internal/poll/fd_unix.go:169 +0x1cf net.(*netFD).Read(0xc0017e7e00, 0xc0044a9000, 0x1000, 0x1000, 0xc0026359e8, 0x49d7fd, 0xc0017e7e00) /usr/local/go/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc0000db8b8, 0xc0044a9000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /usr/local/go/src/net/net.go:184 +0x68 net/http.(*connReader).Read(0xc004a4fec0, 0xc0044a9000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /usr/local/go/src/net/http/server.go:785 +0xf4 bufio.(*Reader).fill(0xc003f1a360) /usr/local/go/src/bufio/bufio.go:100 +0x103 bufio.(*Reader).Peek(0xc003f1a360, 0x4, 0x0, 0x0, 0x0, 0x0, 0xc002635ad0) /usr/local/go/src/bufio/bufio.go:138 +0x4f net/http.(*conn).readRequest(0xc0028e1d60, 0x393ed20, 0xc0024e9780, 0x0, 0x0, 0x0) /usr/local/go/src/net/http/server.go:962 +0xb3b net/http.(*conn).serve(0xc0028e1d60, 0x393ed20, 0xc0024e9780) /usr/local/go/src/net/http/server.go:1817 +0x6d4 created by net/http.(*Server).Serve /usr/local/go/src/net/http/server.go:2928 +0x384
Is there a know issue or something obvious from the backtrace here.
Ian Lance Taylor
unread,Aug 23, 2020, 3:31:06 AM (3 days ago) to siddhesh…@gmail.com, golan…@googlegroups.comIt’s entirely normal for goroutines to sit in pollWait if they are
waiting for network I/O. There may be reasons why this is incorrect
for your program, but you’ll have to tell us those reasons.
Also, along with those reasons, please tell us the version of Go and
the exact environment that you are running. Thanks.
Ian
siddhesh…@gmail.com
unread,Aug 25, 2020, 7:16:12 AM (yesterday) to ren…@ix.netcom.com, Ian Lance Taylor, golan…@googlegroups.comHi Robert,
Sorry I missed your earlier response.
From what we saw our UI was blocked and since everything was unresponsive
we had to recover the system by sending sig abort. —
-Siddhesh.
ren…@ix.netcom.com
unread,Aug 25, 2020, 6:26:26 PM (yesterday) to siddhesh…@gmail.com, Ian Lance Taylor, golan…@googlegroups.comThe tcp protocol allows the connection to wait for hours. Go routines stuck in wait do not burn CPU. Are the clients local or remote (over internet)?
On Aug 24, 2020, at 10:29 PM, Siddhesh Divekar <siddhesh…@gmail.com> wrote:
siddhesh…@gmail.com
unread,Aug 25, 2020, 10:24:20 PM (9 hours ago) to ren…@ix.netcom.com, Ian Lance Taylor, golan…@googlegroups.comClients are over the internet.–
-Siddhesh.