buptubuntu opened a new pull request #2497:
URL: https://github.com/apache/thrift/pull/2497
Client: [go]
If there is client connection and no data is send,we will encounter hang
druing server stop:
1>If transport factory conf with socket timeout,we will hang until the
deadline of the socket
2>If transport factory conf without socket timeout,we will hang forever
Stack As below:
goroutine 140800 [IO wait, 2706 minutes]:
internal/poll.runtime_pollWait(0x7fbf804fb100, 0x72)
runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc009087700, 0xc008196000, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc009087700, {0xc008196000, 0x10000, 0x10000})
internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc009087700, {0xc008196000, 0x0, 0xc0061089b8})
net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc007c98038, {0xc008196000, 0x0, 0xc006108978})
net/net.go:183 +0x45
github.com/apache/thrift/lib/go/thrift.(*socketConn).Read(0x246aae0,
{0xc008196000, 0xc0058b4ed0, 0x246aae0})
github.com/apache/[email protected]/lib/go/thrift/socket_conn.go:101 +0x44
github.com/apache/thrift/lib/go/thrift.(*TSocket).Read(0xc003555460,
{0xc008196000, 0x10000, 0x10000})
github.com/apache/[email protected]/lib/go/thrift/socket.go:221 +0x67
bufio.(*Reader).Read(0xc005657320, {0xc001da1000, 0x1000, 0x203000})
bufio/bufio.go:227 +0x1b4
github.com/apache/thrift/lib/go/thrift.(*TBufferedTransport).Read(0xc0035554a0,
{0xc001da1000, 0x431e10, 0x64})
github.com/apache/[email protected]/lib/go/thrift/buffered_transport.go:67
+0x45
bufio.(*Reader).Read(0xc005657380, {0xc0090877f0, 0x4, 0x4b5bac0})
bufio/bufio.go:227 +0x1b4
io.ReadAtLeast({0x30c0520, 0xc005657380}, {0xc0090877f0, 0x4, 0x4}, 0x4)
io/io.go:328 +0x9a
io.ReadFull(...)
io/io.go:347
github.com/apache/thrift/lib/go/thrift.(*TFramedTransport).readFrame(0xc009087780)
github.com/apache/[email protected]/lib/go/thrift/framed_transport.go:199
+0x3c
github.com/apache/thrift/lib/go/thrift.(*TFramedTransport).Read(0xc009087780,
{0xc0090877f0, 0x1, 0x4})
github.com/apache/[email protected]/lib/go/thrift/framed_transport.go:148
+0x130
github.com/apache/thrift/lib/go/thrift.(*TFramedTransport).ReadByte(0xc009087780)
github.com/apache/[email protected]/lib/go/thrift/framed_transport.go:157
+0x2e
github.com/apache/thrift/lib/go/thrift.(*TCompactProtocol).readByteDirect(...)
github.com/apache/[email protected]/lib/go/thrift/compact_protocol.go:766
github.com/apache/thrift/lib/go/thrift.(*TCompactProtocol).ReadMessageBegin(0xc008765040,
{0x311a118, 0xc00319ede0})
github.com/apache/[email protected]/lib/go/thrift/compact_protocol.go:367
+0x62
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]