Skip to content

Commit 3d4ce9b

Browse files
committed
restore EOF handling on TCP failed conns
1 parent bd2dddd commit 3d4ce9b

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

sdk/client/client.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -780,7 +780,7 @@ func extendedRetryPolicy(resp *http.Response, err error) (bool, error) {
780780
tcpDialTCPRe := regexp.MustCompile(`dial tcp`)
781781

782782
// A regular expression to match complete packet loss - see comment below on packet-loss scenarios
783-
// completePacketLossRe := regexp.MustCompile(`EOF$`)
783+
completePacketLossRe := regexp.MustCompile(`EOF`)
784784

785785
if err != nil {
786786
var v *url.Error
@@ -809,11 +809,10 @@ func extendedRetryPolicy(resp *http.Response, err error) (bool, error) {
809809
return false, v
810810
}
811811

812-
// TODO - Need to investigate how to deal with total packet-loss situations that doesn't break LRO retries.
813-
// Such as Temporary Proxy outage, or recoverable disruption to network traffic (e.g. bgp events etc)
814-
// if completePacketLossRe.MatchString(v.Error()) {
815-
// return false, v
816-
// }
812+
// Such as Temporary Proxy outage, or recoverable disruption to network traffic (e.g. bgp events, Proxy failures etc)
813+
if completePacketLossRe.MatchString(v.Error()) {
814+
return false, v
815+
}
817816

818817
var certificateVerificationError *tls.CertificateVerificationError
819818
if ok := errors.As(v.Err, &certificateVerificationError); ok {

0 commit comments

Comments
 (0)