timsaucer opened a new pull request, #19079: URL: https://github.com/apache/datafusion/pull/19079
## Which issue does this PR close? Addresses part of https://github.com/apache/datafusion/issues/18671 but does not close it. ## Rationale for this change We have a major restriction in our current FFI crates. They use protobuf encoding and decoding to pass around logical expressions. This encoding and decoding will fail when we encounter a user defined function because we only currently use the default extension codecs. This PR introduces the FFI variants for both logical and physical extension codecs. A follow on PR will enable these in our code base, on order to keep these PRs to a reasonable length for review. In addition to the benefit to the FFI crate for passing expressions, this will also enable sending plans across FFI boundaries, which may be useful for `datafusion-distributed`. ## What changes are included in this PR? - Implement `FFI_LogicalExtensionCodec` - Implement `FFI_PhysicalExtensionCodec` This PR does _not_ use these structures in the current code. That is coming as part of a later PR in an effort to keep the size of the PRs small for effective code review. ## Are these changes tested? Unit tests are added. Coverage report: <img width="523" height="222" alt="Screenshot 2025-12-03 at 4 37 23 PM" src="https://github.com/user-attachments/assets/4e139052-c74c-4e32-a057-66bd4bd68e21" /> ## Are there any user-facing changes? No. -- 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]
