You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Weston Pace (Jira)" <ji...@apache.org> on 2022/02/02 18:55:00 UTC
[jira] [Created] (ARROW-15534) [C++] Add convenience function to substrait consumer to create plan instead of declaration
Weston Pace created ARROW-15534:
-----------------------------------
Summary: [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
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.1#820001)