diff --git a/pulsar/internal/connection.go b/pulsar/internal/connection.go index a04fa2a27..57fc72419 100644 --- a/pulsar/internal/connection.go +++ b/pulsar/internal/connection.go @@ -411,26 +411,16 @@ func (c *connection) run() { c.log.Debugf("Connection run starting with request capacity=%d queued=%d", cap(c.incomingRequestsCh), len(c.incomingRequestsCh)) - go func() { - for { - select { - case <-c.closeCh: - c.failLeftRequestsWhenClose() - return - - case req := <-c.incomingRequestsCh: - if req == nil { - return // TODO: this never gonna be happen - } - c.internalSendRequest(req) - } - } - }() - for { select { case <-c.closeCh: + c.failLeftRequestsWhenClose() return + case req := <-c.incomingRequestsCh: + if req == nil { + return // TODO: this never gonna be happen + } + c.internalSendRequest(req) case data := <-c.writeRequestsCh: if data == nil { return