Merge pull request #103007 from smira/error-wrapping

fix: properly wrap errors when reading response body in the client
This commit is contained in:
Kubernetes Prow Robot
2021-06-18 14:48:05 -07:00
committed by GitHub

View File

@@ -1077,13 +1077,13 @@ func (r *Request) transformResponse(resp *http.Response, req *http.Request) Resu
// 3. Apiserver closes connection. // 3. Apiserver closes connection.
// 4. client-go should catch this and return an error. // 4. client-go should catch this and return an error.
klog.V(2).Infof("Stream error %#v when reading response body, may be caused by closed connection.", err) klog.V(2).Infof("Stream error %#v when reading response body, may be caused by closed connection.", err)
streamErr := fmt.Errorf("stream error when reading response body, may be caused by closed connection. Please retry. Original error: %v", err) streamErr := fmt.Errorf("stream error when reading response body, may be caused by closed connection. Please retry. Original error: %w", err)
return Result{ return Result{
err: streamErr, err: streamErr,
} }
default: default:
klog.Errorf("Unexpected error when reading response body: %v", err) klog.Errorf("Unexpected error when reading response body: %v", err)
unexpectedErr := fmt.Errorf("unexpected error when reading response body. Please retry. Original error: %v", err) unexpectedErr := fmt.Errorf("unexpected error when reading response body. Please retry. Original error: %w", err)
return Result{ return Result{
err: unexpectedErr, err: unexpectedErr,
} }