stop retry when all nodes have tried it (#6551)
Co-authored-by: liguowei <liguowei@xinye.com>
This commit is contained in:
@@ -130,7 +130,9 @@ func retriedStreamFetchChunkData(writer io.Writer, urlStrings []string, jwt stri
|
|||||||
var totalWritten int
|
var totalWritten int
|
||||||
|
|
||||||
for waitTime := time.Second; waitTime < util.RetryWaitTime; waitTime += waitTime / 2 {
|
for waitTime := time.Second; waitTime < util.RetryWaitTime; waitTime += waitTime / 2 {
|
||||||
|
retriedCnt := 0
|
||||||
for _, urlString := range urlStrings {
|
for _, urlString := range urlStrings {
|
||||||
|
retriedCnt++
|
||||||
var localProcessed int
|
var localProcessed int
|
||||||
var writeErr error
|
var writeErr error
|
||||||
shouldRetry, err = util_http.ReadUrlAsStreamAuthenticated(urlString+"?readDeleted=true", jwt, cipherKey, isGzipped, isFullChunk, offset, size, func(data []byte) {
|
shouldRetry, err = util_http.ReadUrlAsStreamAuthenticated(urlString+"?readDeleted=true", jwt, cipherKey, isGzipped, isFullChunk, offset, size, func(data []byte) {
|
||||||
@@ -161,6 +163,10 @@ func retriedStreamFetchChunkData(writer io.Writer, urlStrings []string, jwt stri
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// all nodes have tried it
|
||||||
|
if retriedCnt == len(urlStrings) {
|
||||||
|
break
|
||||||
|
}
|
||||||
if err != nil && shouldRetry {
|
if err != nil && shouldRetry {
|
||||||
glog.V(0).Infof("retry reading in %v", waitTime)
|
glog.V(0).Infof("retry reading in %v", waitTime)
|
||||||
time.Sleep(waitTime)
|
time.Sleep(waitTime)
|
||||||
|
|||||||
Reference in New Issue
Block a user