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

pull/2891/head
Felix Lange 8 years ago
parent 3e3a79ea13
commit 464660651d
  1. 4
      rpc/client.go

@ -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
} }

Loading…
Cancel
Save