plusplusjiajia commented on code in PR #719:
URL: https://github.com/apache/iceberg-cpp/pull/719#discussion_r3458148071
##########
src/iceberg/catalog/rest/rest_catalog.cc:
##########
@@ -516,7 +516,17 @@ Result<std::shared_ptr<auth::AuthSession>>
RestCatalog::TableAuthSession(
Result<std::shared_ptr<FileIO>> RestCatalog::TableFileIO(
const SessionContext& /*context*/,
- const std::unordered_map<std::string, std::string>& table_config) const {
+ const std::unordered_map<std::string, std::string>& table_config,
+ const std::vector<StorageCredential>& storage_credentials) const {
+ // Longest-prefix "s3" vended credential. Java's VendedCredentialsProvider
+ // resolves per path against the table location; we bind one at load time
+ // (fine for the common one-credential-per-table case).
+ if (const StorageCredential* s3_cred =
SelectS3StorageCredential(storage_credentials);
Review Comment:
@wgtmac Addressed. When the server vends only non-S3 credentials (GCS/ADLS),
TableFileIO now fails fast with NotSupported listing the prefixes, rather than
silently using the catalog FileIO. If S3 credentials are vended but none covers
this table's location, it falls through to the catalog FileIO (which may use
ambient creds). S3-only support is intentional for now — see the TODO in
TableFileIO.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]