ZK leader finder now returns a temporary error instead of constantly no leader found and quitting. It could be that the leader info is being propagated so it's worth trying another time.

This commit is contained in:
Renan DelValle 2018-02-12 15:31:50 -08:00
parent 3a8442522f
commit 2374e11b6d
No known key found for this signature in database
GPG key ID: C240AD6D6F443EC9

5
zk.go
View file

@ -93,11 +93,12 @@ func LeaderFromZK(cluster Cluster) (string, error) {
}
}
return false, errors.New("No leader found")
// Leader data might not be available yet, try to fetch again.
return false, NewTemporaryError(errors.New("No leader found"))
})
if retryErr != nil {
return "", errors.Wrapf(retryErr, "Failed to determine leader after %v attempts", defaultBackoff.Steps)
return "", NewTimeoutError(errors.Wrapf(retryErr, "Failed to determine leader after %v attempts", defaultBackoff.Steps))
}
return zkurl, nil