[
https://issues.apache.org/jira/browse/ARROW-15901?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17532284#comment-17532284
]
Yaron Gvili commented on ARROW-15901:
-------------------------------------
To explain the issue a bit more, the current situation is the following:
# In Ibis-Substrait protobuf definitions, a plan includes [either a relation
or a
root-relation|https://github.com/ibis-project/ibis-substrait/blob/5ca22613b8b9dc5fdc697384c7652675e071f4fc/proto/substrait/plan.proto#L14-L19],
while [a root-relation includes a relation and custom output field
names|https://github.com/ibis-project/ibis-substrait/blob/5ca22613b8b9dc5fdc697384c7652675e071f4fc/proto/substrait/algebra.proto#L230-L235].
# Arrow-Substrait, which is an Ibis-Substrait plan consumer, [does not support
custom output field names defined in a
root-relation|https://github.com/apache/arrow/blob/1dba9fb79eb7800556e387a1cf4851912ce7d724/cpp/src/arrow/engine/substrait/serde.cc#L70-L72].
Without support for custom output field names, Arrow-Substrait can only process
an Ibis-Substrait plan with a (non-root) relation that does not include a
specification of output field names. This leads to an output schema (for the
plan) with inconvenient field names, and prompts a user to execute a second
plan just to apply a field-renaming projection. This is undesirable, of course,
and the user would rather have everything done in a single Ibis-Substrait plan.
This is fixed by adding support for custom output field names in
Arrow-Substrait.
> [C++] Support Substrait projection with custom output field names
> -----------------------------------------------------------------
>
> Key: ARROW-15901
> URL: https://issues.apache.org/jira/browse/ARROW-15901
> Project: Apache Arrow
> Issue Type: Improvement
> Components: C++
> Reporter: Yaron Gvili
> Assignee: Yaron Gvili
> Priority: Major
> Labels: pull-request-available
> Time Spent: 2.5h
> Remaining Estimate: 0h
>
> Currently, Arrow Substrait does not support a plan with custom output field
> names. The proposal is to add support for projection only at this time.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)