Class CatalogServiceLimitedTimeRetryPolicy (2.23.0-rc)

A retry policy for CatalogServiceConnection based on elapsed time.

This policy stops retrying if:

  • An RPC returns a non-transient error.
  • The elapsed time in the retry loop exceeds a prescribed duration.

In this class the following status codes are treated as transient errors:

Constructors

CatalogServiceLimitedTimeRetryPolicy(std::chrono::duration< DurationRep, DurationPeriod >)

Constructor given a std::chrono::duration<> object.

See Also

https://en.cppreference.com/w/cpp/chrono/duration for more information about std::chrono::duration.

Parameters
NameDescription
maximum_duration std::chrono::duration< DurationRep, DurationPeriod >

the maximum time allowed before the policy expires. While the application can express this time in any units they desire, the class truncates to milliseconds.

typename DurationRep

a placeholder to match the Rep tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the underlying arithmetic type used to store the number of ticks. For our purposes it is simply a formal parameter.

typename DurationPeriod

a placeholder to match the Period tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the length of the tick in seconds, expressed as a std::ratio<>. For our purposes it is simply a formal parameter.

CatalogServiceLimitedTimeRetryPolicy(CatalogServiceLimitedTimeRetryPolicy &&)

Parameter
NameDescription
rhs CatalogServiceLimitedTimeRetryPolicy &&

CatalogServiceLimitedTimeRetryPolicy(CatalogServiceLimitedTimeRetryPolicy const &)

Parameter
NameDescription
rhs CatalogServiceLimitedTimeRetryPolicy const &

Functions

maximum_duration() const

Returns
TypeDescription
std::chrono::milliseconds

virtual OnFailure(Status const &)

Parameter
NameDescription
status Status const &
Returns
TypeDescription
bool

virtual IsExhausted() const

Returns
TypeDescription
bool

virtual IsPermanentFailure(Status const &) const

Parameter
NameDescription
status Status const &
Returns
TypeDescription
bool

virtual clone() const

Creates a new instance of the policy, reset to the initial state.

Returns
TypeDescription
std::unique_ptr< CatalogServiceRetryPolicy >

Type Aliases

BaseType

Alias Of: CatalogServiceRetryPolicy