[
https://issues.apache.org/jira/browse/ARROW-15534?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sanjiban Sengupta reassigned ARROW-15534:
-----------------------------------------
Assignee: Sanjiban Sengupta
> [C++] Add convenience function to substrait consumer to create plan instead
> of declaration
> ------------------------------------------------------------------------------------------
>
> Key: ARROW-15534
> URL: https://issues.apache.org/jira/browse/ARROW-15534
> Project: Apache Arrow
> Issue Type: Improvement
> Components: C++
> Reporter: Weston Pace
> Assignee: Sanjiban Sengupta
> Priority: Major
> Labels: substrait
>
> This is a follow-up to ARROW-15238
> The current API for Substrait is:
> {code}
> Result<std::vector<compute::Declaration>> DeserializePlan(
> const Buffer&, const ConsumerFactory&, ExtensionSet* ext_set = NULLPTR)
> {code}
> 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:
> {code}
> 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)
> {code}
> 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).
--
This message was sent by Atlassian Jira
(v8.20.7#820007)