A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cloud.google.com/cpp/docs/reference/redis/latest/redis_v1_1_1CloudRedisClient-retry-snippet below:

C++ Client Libraries | Google Cloud

Stay organized with collections Save and categorize content based on your preferences.

Override redis_v1::CloudRedisClient Retry Policies

This shows how to override the retry policies for redis_v1::CloudRedisClient:

  auto options =
      google::cloud::Options{}
          .set<google::cloud::redis_v1::
                   CloudRedisConnectionIdempotencyPolicyOption>(
              CustomIdempotencyPolicy().clone())
          .set<google::cloud::redis_v1::CloudRedisRetryPolicyOption>(
              google::cloud::redis_v1::CloudRedisLimitedErrorCountRetryPolicy(3)
                  .clone())
          .set<google::cloud::redis_v1::CloudRedisBackoffPolicyOption>(
              google::cloud::ExponentialBackoffPolicy(
                  /*initial_delay=*/std::chrono::milliseconds(200),
                  /*maximum_delay=*/std::chrono::seconds(45),
                  /*scaling=*/2.0)
                  .clone());
  auto connection = google::cloud::redis_v1::MakeCloudRedisConnection(options);

  // c1 and c2 share the same retry policies
  auto c1 = google::cloud::redis_v1::CloudRedisClient(connection);
  auto c2 = google::cloud::redis_v1::CloudRedisClient(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::redis_v1::CloudRedisClient(
      connection,
      google::cloud::Options{}
          .set<google::cloud::redis_v1::CloudRedisRetryPolicyOption>(
              google::cloud::redis_v1::CloudRedisLimitedTimeRetryPolicy(
                  std::chrono::minutes(5))
                  .clone()));

  // You can also override the policies in a single call:
  // c3.SomeRpc(..., google::cloud::Options{}
  //     .set<google::cloud::redis_v1::CloudRedisRetryPolicyOption>(
  //       google::cloud::redis_v1::CloudRedisLimitedErrorCountRetryPolicy(10).clone()));

Assuming you have created a custom idempotency policy. Such as:

class CustomIdempotencyPolicy
    : public google::cloud::redis_v1::CloudRedisConnectionIdempotencyPolicy {
 public:
  ~CustomIdempotencyPolicy() override = default;
  std::unique_ptr<
      google::cloud::redis_v1::CloudRedisConnectionIdempotencyPolicy>
  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."],[[["The latest version available is 2.37.0-rc, with links provided for it and several previous versions of the redis documentation, down to 2.11.0."],["You can override default retry policies for `redis_v1::CloudRedisClient` using `google::cloud::Options`."],["Retry policies can be customized by setting options such as `CloudRedisConnectionIdempotencyPolicyOption`, `CloudRedisRetryPolicyOption`, and `CloudRedisBackoffPolicyOption`."],["Clients created from the same connection will share the same retry policies unless overridden at client creation or within an individual RPC call."],["A `CustomIdempotencyPolicy` class can be defined to tailor the idempotency behavior, providing a template to alter such functions as required."]]],[]]


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