[
https://issues.apache.org/jira/browse/THRIFT-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15530847#comment-15530847
]
Patrick Bennett commented on THRIFT-3855:
-----------------------------------------
Not sure if this is related but thrift 0.9.3 generates code such that even one
call to Stop() hangs.
If I set up a handler to trap ctrl-c/sigint (so that I can gracefully term my
own goroutines) like so:
quitChan := make(chan os.Signal)
// trap ctrl-c - and gracefully stop service
signal.Notify(quitChan, os.Interrupt)
go func() {
<-quitChan
consoleTopic.Status(ctx, "...exiting")
server.Stop()
}()
server.Serve() // <--- this never returns!
> In the go simple server, if Stop() is called multiple times it hangs
> --------------------------------------------------------------------
>
> Key: THRIFT-3855
> URL: https://issues.apache.org/jira/browse/THRIFT-3855
> Project: Thrift
> Issue Type: Bug
> Components: Go - Library
> Affects Versions: 0.9.3
> Reporter: James E. King, III
> Assignee: Paul Finkelshteyn
> Priority: Minor
> Fix For: 0.10.0
>
>
> From the submitter huaiwan:
> {quote}
> huaiyun commented 18 hours ago
> When Stop() is called twice or more, and no new connection accepted from
> AcceptLoop(), the Stop() will be blocked because the quit channel is full.
> {quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)