developer-rpai commented on PR #18542:
URL: https://github.com/apache/iceberg/pull/18542#issuecomment-6284463395

   You are right, and thanks for making me trace it properly. In 
DynamicRecordProcessor the IDs stored on the record are always computed by 
getEqualityFieldIds against the same schema object stored alongside them: the 
emit path uses the resolved table schema for both, and the update side-output 
path uses data.schema() for both. Within getEqualityFieldIds, the name branch 
resolves against that schema with its own checkNotNull, and the fallback copies 
that schema's own identifierFieldIds, so findColumnName cannot return null for 
any record the current code produces. The only way there would be a hand-built 
Schema whose identifierFieldIds reference missing fields, which is invalid 
input rather than a real code path. Consider the comment withdrawn; the 
checkNotNull in remapFieldIds earns its keep on the toSchema side, where a 
dropped field is a genuine case.


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