Skip to content
Snippets Groups Projects
Commit c40276b1 authored by Francé Wilke's avatar Francé Wilke
Browse files

Add IsRetryableError function

parent e16d1c9d
Branches
Tags v1.44.0
No related merge requests found
...@@ -2,6 +2,7 @@ package errors ...@@ -2,6 +2,7 @@ package errors
import ( import (
"fmt" "fmt"
"net/http"
"path" "path"
"strconv" "strconv"
"strings" "strings"
...@@ -242,3 +243,20 @@ func pkgDescription(level int, err error) *Description { ...@@ -242,3 +243,20 @@ func pkgDescription(level int, err error) *Description {
} // if has stack } // if has stack
return desc return desc
} }
func IsRetryableError(err error) bool {
code := HTTPCode(err)
// 429 should always retry
if code == http.StatusTooManyRequests {
return true
}
// Retry for all except 200s and 400s
if code < 200 || (code >= 300 && code < 400) || code > 500 {
return true
}
return false
}
...@@ -2,7 +2,6 @@ package errors ...@@ -2,7 +2,6 @@ package errors
import ( import (
"fmt" "fmt"
pkg_errors "github.com/pkg/errors" pkg_errors "github.com/pkg/errors"
) )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment