sungwy opened a new issue, #3931:
URL: https://github.com/apache/iceberg-python/issues/3931

   When a table is loaded, its metadata properties are merged into the property 
map used to construct the table's `FileIO`, and they take precedence over the 
operator's catalog configuration.
   
   `Catalog._load_file_io` computes:
   
   ```python
   load_file_io({**self.properties, **properties}, location)
   ```
   
   where `properties` is `metadata.properties`. Because table properties come 
last, a value stored in a table overrides the same key configured on the 
catalog. The REST path does the same at `_response_to_table` / 
`_response_to_staged_table`, and Glue, Hive, SQL, DynamoDB, BigQuery and 
`StaticTable.from_metadata` all funnel table metadata into `FileIO` 
construction the same way — 12 call sites in total.
   
   The keys this reaches include implementation selection (`py-io-impl`, 
`s3.retry-strategy-impl`) and transport configuration (`s3.endpoint`, 
`s3.proxy-uri`, `s3.signer` / `s3.signer.uri`, `gcs.service.host`, 
`hf.endpoint`, the ADLS storage authorities). These are deployment concerns — 
an operator sets them on the catalog — but any principal who can commit to a 
table can currently override them for everyone who reads it.
   


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