-
Tom Bergan authored
RoundTrip will retry a request if it receives REFUSED_STREAM. To guard against servers that use REFUSED_STREAM to encourage rate limiting, or servers that return REFUSED_STREAM deterministically for some requests, we retry after an exponential backoff and we cap the number of retries. The exponential backoff starts on the second retry, with a backoff sequence of 1s, 2s, 4s, etc, with 10% random jitter. The retry cap was set to 6, somewhat arbitrarily. Rationale: this is what Firefox does. Updates golang/go#20985 Change-Id: I4dcac4392ac4a3220d6d839f28bf943fe6b3fea7 Reviewed-on: https://go-review.googlesource.com/50471 Run-TryBot: Tom Bergan <tombergan@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
945ddfdd