Define the interface for controlling how the Bigtable client retries RPC operations.
The C++ client for Bigtable needs to hide partial and temporary failures from the application. However, we need to give the users enough flexibility to control how many attempts are made to reissue operations, how often these attempts are executed, and how to signal that an error has occurred.
The application provides an instance of this class when the Table (or TableAdmin) object is created. This instance serves as a prototype to create new RPCRetryPolicy objects of the same (dynamic) type and with the same initial state.
Functions
clone() const
Return a new copy of this object.
Typically implemented as ```cpp
return std::unique_ptr
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-05 UTC."],[[["This document details the `RPCRetryPolicy` class within the Google Cloud Bigtable C++ client, outlining its role in managing RPC retries."],["The `RPCRetryPolicy` class offers a mechanism to manage the number, frequency, and error signaling for retry attempts, which allows for dynamic object creation and state replication through its `clone()` function."],["The `OnFailure()` function within `RPCRetryPolicy` determines whether an RPC operation should be retried based on the received status, and it also has the `IsExhausted()` function to determine if a retry policy has failed."],["The document lists all the different versions of the RPCRetryPolicy class from 2.11.0 up to the latest version, 2.37.0-rc."],["The class updates the `ClientContext` using the `Setup()` function for each call, and contains functions `IsPermanentFailure()` that will determine if the failure is a permanent failure."]]],[]]