You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@opendal.apache.org by "BaurzhanSakhariev (via GitHub)" <gi...@apache.org> on 2026/09/16 07:20:14 UTC

Re: S3 service support for withForceGlobalBucketAccessEnabled

GitHub user BaurzhanSakhariev edited a discussion: S3 service support for withForceGlobalBucketAccessEnabled

Region is [required](https://github.com/apache/opendal/blob/main/core/services/s3/src/backend.rs?plain=1#L921) in S3 service.

It must be resolved via [detect_region](https://opendal.apache.org/docs/rust/opendal/services/struct.S3.html#method.detect_region) (which can return None), or set in env.

If HEAD request in `detect_region` fails for whatever reason, and we don't set region in env, we end up seeing validation error.
HEAD can fail, for example, due to `javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake` - that's what I observed once.

Question: Is it possible to mirror S3 client and make detect_region fallback to DEFAULT_REGION if it can't resolved?
Currently it falls back to default only in [certain cases](https://github.com/apache/opendal/blob/main/core/services/s3/src/backend.rs?plain=1#L807-L811).

Then it might be possible to support [withForceGlobalBucketAccessEnabled](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/AmazonS3Builder.html#withForceGlobalBucketAccessEnabled-java.lang.Boolean-). 
AFAIK, with such flag we can always use default region, see https://stackoverflow.com/a/49934069

If it makes sense, I can convert it to a feature request. 
Main goal is to make client more robust and HEAD-api-failure-tolerant.

GitHub link: https://github.com/apache/opendal/discussions/8309

----
This is an automatically sent email for dev@opendal.apache.org.
To unsubscribe, please send an email to: dev-unsubscribe@opendal.apache.org