Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
This is a follow-up to ARROW-15238
The current API for Substrait is:
Result<std::vector<compute::Declaration>> DeserializePlan( const Buffer&, const ConsumerFactory&, ExtensionSet* ext_set = NULLPTR)
This converts a plan into a vector of declarations (one per root-relation in the Substrait plan)
These declarations then have to be added to an exec plan to run.
As a convenience we could alter the API:
Result<std::vector<compute::Declaration>> DeserializePlans( const Buffer&, const ConsumerFactory&, ExtensionSet* ext_set = NULLPTR) result<compute::ExecPlan> DeserializePlan(const Buffer&, const ConsumerFactory&, ExtensionSet* ext_set = NULLPTR)
This would save the user from needing to create an empty exec plan (and it could return an error if the substrait plan had multiple root relations).
Attachments
Issue Links
- links to