Slow down S3 client threads on retryable errors in S3 Object Storage#85918
Merged
nikitamikhaylov merged 11 commits intoClickHouse:masterfrom Aug 26, 2025
Merged
Conversation
Contributor
19fdd7a to
28e054c
Compare
jkartseva
commented
Aug 26, 2025
Comment on lines
+470
to
+474
| DECLARE_WITH_ALIAS(Bool, s3_slow_all_threads_after_retryable_error, true, R"( | ||
| When set to `true`, all threads executing S3 requests to the same endpoint are slowed down | ||
| after any single S3 request encounters a retryable S3 error, such as 'Slow Down'. | ||
| When set to `false`, each thread handles s3 request backoff independently of the others. | ||
| )", 0, backup_slow_all_threads_after_retryable_s3_error) \ |
Member
Author
There was a problem hiding this comment.
An alternative would be to deprecate the backup_slow_all_threads_after_retryable_s3_error setting in favor of s3_slow_all_threads_after_retryable_error because the latter has a broader scope.
nikitamikhaylov
approved these changes
Aug 26, 2025
robot-ch-test-poll1
added a commit
that referenced
this pull request
Aug 26, 2025
Cherry pick #85918 to 25.8: Slow down S3 client threads on retryable errors in S3 Object Storage
robot-clickhouse
added a commit
that referenced
this pull request
Aug 26, 2025
…ors in S3 Object Storage
clickhouse-gh bot
added a commit
that referenced
this pull request
Aug 26, 2025
Backport #85918 to 25.8: Slow down S3 client threads on retryable errors in S3 Object Storage
jkartseva
added a commit
that referenced
this pull request
Aug 27, 2025
Cherry pick #85918 to 25.6: Slow down S3 client threads on retryable errors in S3 Object Storage
robot-clickhouse
added a commit
that referenced
this pull request
Aug 27, 2025
…ors in S3 Object Storage
clickhouse-gh bot
added a commit
that referenced
this pull request
Aug 27, 2025
Backport #85918 to 25.6: Slow down S3 client threads on retryable errors in S3 Object Storage
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The existing backup_slow_all_threads_after_retryable_s3_error setting does not cover all backup use cases, such as native copy from disk. This setting is false for the S3 client of the source S3 disk:
https://github.com/ClickHouse/clickhouse-private/blob/d88f38b8611dfdcd2e9c4ab72aa168370d5446e8/src/Backups/BackupIO_S3.cpp#L334
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):
Slow down S3 client threads on retryable errors in S3 Object Storage. This extends the previous setting
backup_slow_all_threads_after_retryable_s3_errorto S3 disks and renames it to the more generals3_slow_all_threads_after_retryable_error.Documentation entry for user-facing changes