You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(storage/s3): default to virtual-host-style addressing (#2330)
## Which issue does this PR close?
N/A
## What changes are included in this PR?
The Java Iceberg SDK defaults [`s3.path-style-access` to
`false`](https://github.com/apache/iceberg/blob/main/aws/src/main/java/org/apache/iceberg/aws/s3/S3FileIOProperties.java#L238-L240)
i.e. virtual-host-style addressing is the spec default. opendal's
`S3Config::default()`, which the opendal storage backend inherits from,
uses path-style. As a result, any user building an iceberg-rust `FileIO`
against AWS S3 or an S3-compatible service has to explicitly set
`s3.path-style-access=false` to get the same behavior they would get
from Java out of the box — and several S3-compatible endpoints only
accept virtual-host-style URLs and fail outright with
`SecondLevelDomainForbidden` (or equivalent) under the current default.
## Are these changes tested?
Yes:
- `cargo test -p iceberg --lib io::storage::config::s3::tests`
- `cargo test -p iceberg-storage-opendal --lib s3::tests
0 commit comments