Fokko commented on issue #338: URL: https://github.com/apache/iceberg-rust/issues/338#issuecomment-2092909489
> @Fokko if https://github.com/apache/iceberg-rust/issues/354 is applied, iceberg-rust will no longer be able to read the manifest list files created by pre-1.5.0 Spark and pre-https://github.com/apache/iceberg-rust/issues/354 iceberg-rust, since iceberg-rust does not read the fields by field-id (it reads the fields by field names). (Please correct me if I'm wrong. I could not find the code in iceberg-rust that resolves the fields by field-id) If this is the case, we should update the rust implementation to do the lookup by field ID. > So in fact, unless this is changed to use the field-id instead of the name, then there is no way this can be fixed without breaking backward compatibility. This is exactly the reason why we should never look up fields by name, and use the ID instead. This will avoid breaking changes. > The referenced manifest You need to look at the schema, you can do this for example using Avro tools: `avro tools schema manifest.avro`. > Something like this perhaps It is not based on the table format version. The change was because of the introduction in the V2 spec, but has been applied in Java later on: https://github.com/apache/iceberg/pull/5338 It was just merged after the 1.4.0 release, so it is part of the 1.5.0 release. Trino uses the Java library so the change will also be fixed upstream. The only way forward is doing the lookups by field-id. -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org