Stay organized with collections Save and categorize content based on your preferences.
This shows how to override the retry policies for run_v2::ExecutionsClient:
auto options =
google::cloud::Options{}
.set<google::cloud::run_v2::
ExecutionsConnectionIdempotencyPolicyOption>(
CustomIdempotencyPolicy().clone())
.set<google::cloud::run_v2::ExecutionsRetryPolicyOption>(
google::cloud::run_v2::ExecutionsLimitedErrorCountRetryPolicy(3)
.clone())
.set<google::cloud::run_v2::ExecutionsBackoffPolicyOption>(
google::cloud::ExponentialBackoffPolicy(
/*initial_delay=*/std::chrono::milliseconds(200),
/*maximum_delay=*/std::chrono::seconds(45),
/*scaling=*/2.0)
.clone());
auto connection = google::cloud::run_v2::MakeExecutionsConnection(options);
// c1 and c2 share the same retry policies
auto c1 = google::cloud::run_v2::ExecutionsClient(connection);
auto c2 = google::cloud::run_v2::ExecutionsClient(connection);
// You can override any of the policies in a new client. This new client
// will share the policies from c1 (or c2) *except* for the retry policy.
auto c3 = google::cloud::run_v2::ExecutionsClient(
connection,
google::cloud::Options{}
.set<google::cloud::run_v2::ExecutionsRetryPolicyOption>(
google::cloud::run_v2::ExecutionsLimitedTimeRetryPolicy(
std::chrono::minutes(5))
.clone()));
// You can also override the policies in a single call:
// c3.SomeRpc(..., google::cloud::Options{}
// .set<google::cloud::run_v2::ExecutionsRetryPolicyOption>(
// google::cloud::run_v2::ExecutionsLimitedErrorCountRetryPolicy(10).clone()));
Assuming you have created a custom idempotency policy. Such as:
class CustomIdempotencyPolicy
: public google::cloud::run_v2::ExecutionsConnectionIdempotencyPolicy {
public:
~CustomIdempotencyPolicy() override = default;
std::unique_ptr<google::cloud::run_v2::ExecutionsConnectionIdempotencyPolicy>
clone() const override {
return std::make_unique<CustomIdempotencyPolicy>(*this);
}
// Override inherited functions to define as needed.
};
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-14 UTC.
[[["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-08-14 UTC."],[[["This document provides guidance on overriding retry policies for `run_v2::ExecutionsClient`, detailing how to customize settings for retries and backoff behavior."],["The latest release candidate version is 2.37.0-rc, and the document references numerous previous versions from 2.36.0 down to 2.11.0, with corresponding documentation links for each."],["You can create custom retry policies such as an idempotency policy, `CustomIdempotencyPolicy`, which can be used to customize how idempotent actions are handled."],["Retry policies can be set globally for all clients using a connection, or overridden for specific clients or even individual RPC calls."],["The provided code examples showcase how to set up custom retry and backoff policies using options, and demonstrate creating multiple clients with shared or unique retry behaviors."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4