Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
transport: Fix deadlock in client keepalive. (grpc#1460)
When gRPC keepalives are enabled (which isn't the case by default at this time) and PermitWithoutStream is false (the default), the client can deadlock when transitioning between having no active stream and having one active stream. Subsequent attempts to create a new stream or to close the client will hang on the transport's mutex, while the keepalive goroutine is waiting indefinitely on a channel while holding the transport's mutex. This fixes grpc#1459.
- Loading branch information