sainad2222 opened a new pull request, #24973: URL: https://github.com/apache/datafusion/pull/24973
## Which issue does this PR close? - Closes #24829. ## Rationale for this change See #24829. ## What changes are included in this PR? Delegates the six missing methods to the child codecs. One wrinkle: the four by-name hooks (`udf`, `udaf`, `udwf`, `higher_order_function`) default to `Ok(())` meaning "no payload, encode by name", and decode only consults the registry when no payload is present. Naive delegation wraps an empty blob and strands those functions, invisible at position 0, where the tuple prost-encodes to zero bytes. Those four now use a new `encode_protobuf_by_name_aware`, which emits a payload only when a codec actually wrote bytes. `try_encode_expr` keeps the plain path; its default is an error rather than `Ok(())`. ## What is the testing strategy for this PR? Four tests in `physical_plan::tests::function_serde`; two of them fail against naive delegation. ## Are there any user-facing changes? `try_encode_udf` / `try_encode_udaf` were already delegated but carried the same empty-payload bug, so they move to the new helper too. Happy to split that out. No public API signatures changed. -- 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]
