diff --git a/ydb/public/sdk/cpp/client/iam/common/iam.h b/ydb/public/sdk/cpp/client/iam/common/iam.h index d52412309375..337d40522c02 100644 --- a/ydb/public/sdk/cpp/client/iam/common/iam.h +++ b/ydb/public/sdk/cpp/client/iam/common/iam.h @@ -168,7 +168,7 @@ class TGrpcIamCredentialsProvider : public ICredentialsProvider { RequestInflight_ = false; sleepDuration = std::min(BackoffTimeout_, BACKOFF_MAX); - BackoffTimeout_ *= 2; + BackoffTimeout_ = std::min(BackoffTimeout_ * 2, BACKOFF_MAX); } Sleep(sleepDuration); diff --git a/ydb/public/sdk/cpp/src/client/iam/common/iam.h b/ydb/public/sdk/cpp/src/client/iam/common/iam.h index 6020a7624c1e..244d18426830 100644 --- a/ydb/public/sdk/cpp/src/client/iam/common/iam.h +++ b/ydb/public/sdk/cpp/src/client/iam/common/iam.h @@ -126,7 +126,7 @@ class TGrpcIamCredentialsProvider : public ICredentialsProvider { RequestInflight_ = false; sleepDuration = std::min(BackoffTimeout_, BACKOFF_MAX); - BackoffTimeout_ *= 2; + BackoffTimeout_ = std::min(BackoffTimeout_ * 2, BACKOFF_MAX); } Sleep(sleepDuration);