Skip to content

Conversation

@ashwanthgoli
Copy link
Contributor

@ashwanthgoli ashwanthgoli commented Oct 10, 2024

  • I added CHANGELOG entry for this change.
  • Change is not relevant to the end user.

Changes

Adds a configuration option for GCS to disable retries. GCS client retries idempotent operations by default.
This allows disabling retries incase someone wants to handle them at a higher level

Introduces MaxRetries configuration for gcs, cos and obs providers.

Already supported by a few providers but the naming isn't consistent

Not supported yet by the following:

  • s3 i raised an upstream pr, i'll make a follow-up change once that is merged
  • bos supports disabling retries with bce.NewNoRetryPolicy() but there is no public api to update max retries.
  • oss does not support updating it, but i do not see the default retries wired up either. So i am not sure if it does retries

Verification

Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
@ashwanthgoli ashwanthgoli marked this pull request as ready for review October 10, 2024 13:48
Copy link
Collaborator

@JoaoBraveCoding JoaoBraveCoding left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@ashwanthgoli ashwanthgoli changed the title gcs: Add config to disable retries Oct 23, 2024
@ashwanthgoli ashwanthgoli changed the title gcs: Add MaxRetires config to cos, gcs and oci Oct 23, 2024
@ashwanthgoli ashwanthgoli changed the title Add MaxRetires config to cos, gcs and oci Oct 23, 2024
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
@ashwanthgoli ashwanthgoli changed the title Add MaxRetires config to cos, gcs and obs Oct 23, 2024
@ashwanthgoli
Copy link
Contributor Author

would really appreciate a review on this one, thank you!

@ashwanthgoli
Copy link
Contributor Author

minio-go v7.0.80 adds support to configure retries, but it requires go@1.22

Copy link
Contributor

@yeya24 yeya24 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks!

@yeya24 yeya24 merged commit d1dd89d into thanos-io:main Nov 11, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

4 participants