diff --git a/rpc/client.go b/rpc/client.go
index a2ef2ed6b63d3fd1a6effdf1b60d9d35af27b3ad..d96189a2d8ea2682e8af7940159f939252f255a5 100644
--- a/rpc/client.go
+++ b/rpc/client.go
@@ -487,6 +487,7 @@ func (c *Client) write(ctx context.Context, msg interface{}) error {
 	}
 	c.writeConn.SetWriteDeadline(deadline)
 	err := json.NewEncoder(c.writeConn).Encode(msg)
+	c.writeConn.SetWriteDeadline(time.Time{})
 	if err != nil {
 		c.writeConn = nil
 	}