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.
[[["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-04-17 UTC."],[[["This webpage details the `RPCRetryPolicy` class for the Bigtable C++ client, which defines the interface for controlling how RPC operations are retried in the event of failures."],["The `RPCRetryPolicy` class is used to manage the number of retry attempts, the timing between attempts, and the signaling of errors to the user when interacting with Bigtable through the C++ library."],["The application provides an instance of `RPCRetryPolicy` when creating a `Table` or `TableAdmin` object, serving as a prototype for new `RPCRetryPolicy` objects."],["The `RPCRetryPolicy` class includes functions such as `clone()`, `Setup()`, and `OnFailure()` to manage the retry process and interact with the gRPC client context."],["The class also includes static functions `IsPermanentFailure()` and `IsExhausted()` to verify the state of the failures and the state of the retries."]]],[]]