From 7261ddedccb63f6e4dc42807b74a629133c1e80c Mon Sep 17 00:00:00 2001 From: Tolga Ceylan Date: Mon, 4 Jun 2018 12:10:00 -0700 Subject: [PATCH] fn: LB agent: EOF from runner is normal in nack cases (#1032) --- api/agent/runner_client.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/api/agent/runner_client.go b/api/agent/runner_client.go index 1b8c56008..6c567305b 100644 --- a/api/agent/runner_client.go +++ b/api/agent/runner_client.go @@ -181,7 +181,11 @@ func sendToRunner(protocolClient pb.RunnerProtocol_EngageClient, call pool.Runne }, }) if sendErr != nil { - logrus.WithError(sendErr).Errorf("Failed to send data frame size=%d isEOF=%v", n, isEOF) + // It's often normal to receive an EOF here as we optimistically start sending body until a NACK + // from the runner. Let's ignore EOF and rely on recv side to catch premature EOF. + if sendErr != io.EOF { + logrus.WithError(sendErr).Errorf("Failed to send data frame size=%d isEOF=%v", n, isEOF) + } return } if isEOF {