Reset streams when an error happens during port-forward

Signed-off-by: Maciej Szulik <soltysh@gmail.com>
This commit is contained in:
Maciej Szulik 2024-10-23 13:30:01 +02:00
parent d9b95ea94f
commit aa11f2461f
No known key found for this signature in database
GPG Key ID: F15E55D276FA84C4

View File

@ -256,6 +256,12 @@ func (h *httpStreamHandler) portForward(p *httpStreamPair) {
msg := fmt.Errorf("error forwarding port %d to pod %s, uid %v: %v", port, h.pod, h.uid, err)
utilruntime.HandleError(msg)
fmt.Fprint(p.errorStream, msg.Error())
// receiving an error from a port-forward operation indicates a problem
// with data stream most probably, thus we want to reset the streams
// indicating there was a problem and allow a new set of streams be
// created to mitigate the problem
p.dataStream.Reset() // nolint:errcheck
p.errorStream.Reset() // nolint:errcheck
}
}