Commit 46466065 authored by Felix Lange's avatar Felix Lange

rpc: don't exceed context deadline while waiting for send lock

parent 3e3a79ea
...@@ -398,6 +398,10 @@ func (c *Client) send(ctx context.Context, op *requestOp, msg interface{}) error ...@@ -398,6 +398,10 @@ func (c *Client) send(ctx context.Context, op *requestOp, msg interface{}) error
err := c.write(ctx, msg) err := c.write(ctx, msg)
c.sendDone <- err c.sendDone <- err
return err return err
case <-ctx.Done():
// This can happen if the client is overloaded or unable to keep up with
// subscription notifications.
return ctx.Err()
case <-c.didQuit: case <-c.didQuit:
return ErrClientQuit return ErrClientQuit
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment