rdblue opened a new pull request #24559: URL: https://github.com/apache/spark/pull/24559
## What changes were proposed in this pull request? This adds a new API for catalog plugins that exposes functions to Spark. The API can list and load functions. This does not include create, delete, or alter operations. There are 3 types of functions defined: * A `ScalarFunction` that produces a value for every call * An `AggregateFunction` that produces a value after updates for a group of rows * An `AssociativeAggregateFunction` that is an aggregate that can be run in parallel and can merge intermediate results Functions loaded from the catalog by name as `UnboundFunction`. Once input arguments are determined `bind` is called on the unbound function to get a `BoundFunction` implementation that is one of the 3 types above. Binding can fail if the function doesn't support the input type. `BoundFunction` returns the result type produced by the function. ## How was this patch tested? This includes a test that demonstrates the new API. ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
