diff options
author | Martin Polden <mpolden@mpolden.no> | 2024-03-14 14:06:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-14 14:06:51 +0100 |
commit | eae18fe7f97f663ee5b0abe9d02af72caef6ba26 (patch) | |
tree | ffbe372640b9f7c2aca5674e90a0a8a771555e39 /client | |
parent | 2d415aed93581592feaf14f8774120319b90c677 (diff) | |
parent | 9c5490ab25192ed4fbe6b6f11e1cecf01f437737 (diff) |
Merge pull request #30623 from vespa-engine/mpolden/retry-status-404
Retry on 404 from /status.html
Diffstat (limited to 'client')
-rw-r--r-- | client/go/internal/vespa/target.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/client/go/internal/vespa/target.go b/client/go/internal/vespa/target.go index ed3cb146eb1..94eb2cbafe4 100644 --- a/client/go/internal/vespa/target.go +++ b/client/go/internal/vespa/target.go @@ -174,7 +174,13 @@ func (s *Service) Wait(timeout time.Duration) error { if err != nil { return err } - okFunc := func(status int, response []byte) (bool, error) { return isOK(status) } + okFunc := func(status int, response []byte) (bool, error) { + // Always retry 404 as /status.html may return 404 while a cluster is becoming ready + if status == 404 { + return false, nil + } + return isOK(status) + } status, err := wait(s, okFunc, func() *http.Request { return req }, timeout, s.retryInterval) if err != nil { statusDesc := "" |