liurenjie1024 commented on PR #1821:
URL: https://github.com/apache/iceberg-rust/pull/1821#issuecomment-3514618454

   Thanks @mbutrovich for explaination. I think the call stack you pointed out:
   
[GenericReader](https://github.com/apache/iceberg/blob/1e851933273bac7d299e6ffd3999f917e11ef569/data/src/main/java/org/apache/iceberg/data/GenericReader.java#L119)
    -- 
[BaseValueReader](https://github.com/apache/iceberg/blob/f9a41688e3ad67d30962b0d093698622b69cb0d9/parquet/src/main/java/org/apache/iceberg/data/parquet/BaseParquetReaders.java#L70)
   ---- 
[replaceMetadata](https://github.com/apache/iceberg/blob/f9a41688e3ad67d30962b0d093698622b69cb0d9/parquet/src/main/java/org/apache/iceberg/data/parquet/BaseParquetReaders.java#L277)
   
   helped to explain your second point:
   > You're right that the spec says to check these rules when a field is "not 
present." However, Java checks partition constants before Parquet field IDs 
(BaseParquetReaders.java:299), and this is intentional. In add_files, partition 
columns can exist in both Parquet and partition metadata. 
   
   But I still can't find out proof for your first point in java:
   
   > You're right that we normally trust field IDs, but we do need the name 
check when name_mapping is present. 


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