File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change 21
21
ErrSameTag = errors .New ("ERR_SAME_TAG" )
22
22
)
23
23
24
- // IsErrHTTPResponseToHTTPSClient returns whether err is
24
+ // isErrHTTPResponseToHTTPSClient returns whether err is
25
25
// "http: server gave HTTP response to HTTPS client"
26
26
func isErrHTTPResponseToHTTPSClient (err error ) bool {
27
27
// The error string is unexposed as of Go 1.16, so we can't use `errors.Is`.
@@ -30,15 +30,21 @@ func isErrHTTPResponseToHTTPSClient(err error) bool {
30
30
return strings .Contains (err .Error (), unexposed )
31
31
}
32
32
33
- // IsErrConnectionRefused return whether err is
33
+ // isErrConnectionRefused return whether err is
34
34
// "connect: connection refused"
35
35
func isErrConnectionRefused (err error ) bool {
36
36
const errMessage = "connect: connection refused"
37
37
return strings .Contains (err .Error (), errMessage )
38
38
}
39
39
40
+ // isErrTimeout return whether err is "timeout"
41
+ func isErrTimeout (err error ) bool {
42
+ const errMessage = "timeout"
43
+ return strings .Contains (err .Error (), errMessage )
44
+ }
45
+
40
46
func NeedsRetryWithHTTP (err error ) bool {
41
- return err != nil && (isErrHTTPResponseToHTTPSClient (err ) || isErrConnectionRefused (err ))
47
+ return err != nil && (isErrHTTPResponseToHTTPSClient (err ) || isErrConnectionRefused (err ) || isErrTimeout ( err ) )
42
48
}
43
49
44
50
func isErrInconsistentNydusLayer (err error ) bool {
You can’t perform that action at this time.
0 commit comments