client close: rpc: unable to write error response

when client close notice: "rpc: unable to write error response..."
This commit is contained in:
kuangzhiqiang 2019-02-03 19:12:13 +08:00 committed by GitHub
parent 89014160fc
commit 6be205fd40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -157,15 +157,17 @@ func (s *rpcServer) ServeConn(sock transport.Socket) {
// TODO: handle error better // TODO: handle error better
if err := handler(ctx, request, response); err != nil { if err := handler(ctx, request, response); err != nil {
// write an error response if err != lastStreamResponseError {
err = rcodec.Write(&codec.Message{ // write an error response
Header: msg.Header, err = rcodec.Write(&codec.Message{
Error: err.Error(), Header: msg.Header,
Type: codec.Error, Error: err.Error(),
}, nil) Type: codec.Error,
// could not write the error response }, nil)
if err != nil { // could not write the error response
log.Logf("rpc: unable to write error response: %v", err) if err != nil {
log.Logf("rpc: unable to write error response: %v", err)
}
} }
s.wg.Done() s.wg.Done()
return return