pub struct RetryableErrors;Expand description
The default RPC retry/reconnect strategy recommended for the BigQuery Storage Read API.
This policy is used for when to reconnect a read stream, such as after
transient network/transport errors, HTTP/2 stream resets, rate-limit errors
(ResourceExhausted), and transient server statuses (Unavailable,
Internal, Aborted, Cancelled, DeadlineExceeded). Reconnection is
always assumed to be idempotent.
This policy must be decorated to limit the duration of the retry loop or the number of attempts.
§Example
let mut reader = client
.read_rows()
.set_read_stream("projects/my-project/locations/us/sessions/s1/streams/st1")
.into_reader()
.with_retry_policy(RetryableErrors.with_attempt_limit(5));Trait Implementations§
Source§impl Clone for RetryableErrors
impl Clone for RetryableErrors
Source§impl Debug for RetryableErrors
impl Debug for RetryableErrors
Source§impl Default for RetryableErrors
impl Default for RetryableErrors
impl RetryPolicy for RetryableErrors
Auto Trait Implementations§
impl Freeze for RetryableErrors
impl RefUnwindSafe for RetryableErrors
impl Send for RetryableErrors
impl Sync for RetryableErrors
impl Unpin for RetryableErrors
impl UnsafeUnpin for RetryableErrors
impl UnwindSafe for RetryableErrors
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> RetryPolicyExt for Twhere
T: RetryPolicy,
impl<T> RetryPolicyExt for Twhere
T: RetryPolicy,
Source§fn with_time_limit(self, maximum_duration: Duration) -> LimitedElapsedTime<Self>
fn with_time_limit(self, maximum_duration: Duration) -> LimitedElapsedTime<Self>
Decorate a RetryPolicy to limit the total elapsed time in the retry loop. Read more
Source§fn with_attempt_limit(self, maximum_attempts: u32) -> LimitedAttemptCount<Self>
fn with_attempt_limit(self, maximum_attempts: u32) -> LimitedAttemptCount<Self>
Decorate a RetryPolicy to limit the number of retry attempts. Read more
Source§fn continue_on_too_many_requests(self) -> TooManyRequests<Self>
fn continue_on_too_many_requests(self) -> TooManyRequests<Self>
Decorate a RetryPolicy to continue on certain status codes. Read more
Source§fn continue_on_client_timeout(self) -> ClientTimeout<Self>
fn continue_on_client_timeout(self) -> ClientTimeout<Self>
Decorate a RetryPolicy to continue on client-side timeouts. Read more