diff options
author | Martin Polden <mpolden@mpolden.no> | 2024-03-14 11:27:49 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2024-03-14 11:27:49 +0100 |
commit | 9c5490ab25192ed4fbe6b6f11e1cecf01f437737 (patch) | |
tree | 33912baaffc7dcc6fc60f74dc1fc3afb2343d226 /client | |
parent | 25fa0f5fbdf67aca2ce0f7d460ce402474a28fc1 (diff) |
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 := "" |