[ 
https://issues.apache.org/jira/browse/ARROW-17648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17604816#comment-17604816
 ] 

Vibhatha Lakmal Abeykoon commented on ARROW-17648:
--------------------------------------------------

[~westonpace] 

In the projection part, Substrait uses `MaskExpression` which doesn't support 
what Acero wants to do with the projection field which is equivalent to 
`substrait::Expression`. I have a doubt if we can support this feature. Would 
appreciate your thoughts on this?

> [C++] Add ScanOptions to support projection and filter in ToProto Read
> ----------------------------------------------------------------------
>
>                 Key: ARROW-17648
>                 URL: https://issues.apache.org/jira/browse/ARROW-17648
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: Vibhatha Lakmal Abeykoon
>            Assignee: Vibhatha Lakmal Abeykoon
>            Priority: Major
>              Labels: query-engine, substrait, substrait-roundtrip
>
> When converting from an Acero plan to a Substrait plan not all scan options 
> are fully supported.  The `projection` (partial column selection) and 
> `filter` (pushdown filtering) support needs to be added.
> Ref:
>  
> {code:java}
> Result<std::unique_ptr<substrait::ReadRel>> ScanRelationConverter(const 
> std::shared_ptr<Schema>& schema, const compute::Declaration& declaration,    
> ExtensionSet* ext_set, const ConversionOptions& conversion_options) {  
> auto read_rel = make_unique<substrait::ReadRel>();
> const auto& scan_node_options = checked_cast<const 
> dataset::ScanNodeOptions&>(*declaration.options);  
> auto dataset = 
> dynamic_cast<dataset::FileSystemDataset*>(scan_node_options.dataset.get()); 
> // TODO handle here{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to