From 5cb477863843f3987f5fced16348a8d69cef5f6f Mon Sep 17 00:00:00 2001 From: Zhiyuan Cao Date: Mon, 26 Feb 2024 16:18:16 +0800 Subject: [PATCH] support for chainable net.Error checks --- estransport/estransport.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/estransport/estransport.go b/estransport/estransport.go index 613de02c7a..9d3135ccb1 100644 --- a/estransport/estransport.go +++ b/estransport/estransport.go @@ -391,8 +391,9 @@ func (c *Client) Perform(req *http.Request) (*http.Response, error) { } // Retry on network errors, but not on timeout errors, unless configured - if err, ok := err.(net.Error); ok { - if (!err.Timeout() || c.enableRetryOnTimeout) && !c.disableRetry { + var netErr net.Error + if errors.As(err,&netErr) { + if (!netErr.Timeout() || c.enableRetryOnTimeout) && !c.disableRetry { shouldRetry = true } }