zakariya-s commented on code in PR #2932:
URL: https://github.com/apache/iceberg-rust/pull/2932#discussion_r4185310758


##########
crates/catalog/rest/src/catalog.rs:
##########
@@ -879,9 +873,29 @@ impl RestSessionCatalog {
                 )
             })?;
 
-        let file_io = FileIOBuilder::new(factory).with_props(props).build();
+        // If the catalog vends refreshable credentials for this table's 
storage,
+        // attach a provider so the backend re-fetches them before they expire.
+        // Only catalog authentication resolved from the properties can be
+        // rebuilt after FileIO serialization.
+        let credential_provider = build_vended_credential_provider(
+            &client.http_client,
+            client.auth_manager.as_ref(),
+            RestVendedCredentialProviderFactory::new(
+                &client.config.uri,
+                table.clone(),
+                table_config.unwrap_or_default(),
+            ),
+            &props,
+            self.auth_manager.is_none(),
+        )

Review Comment:
   Indeed, this PR depends on #2651 for storage-credentials and won't consume 
them itself. After that other PR lands, its per-prefix storages will be passed 
the provider with optional seeding from storage-credentials.



-- 
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]

Reply via email to