You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Dewey Dunnington (Jira)" <ji...@apache.org> on 2022/04/08 12:30:00 UTC

[jira] [Assigned] (ARROW-16152) [C++] Typo that causes segfault with unknown functions in Substrait

     [ https://issues.apache.org/jira/browse/ARROW-16152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dewey Dunnington reassigned ARROW-16152:
----------------------------------------

    Assignee: Dewey Dunnington

> [C++] Typo that causes segfault with unknown functions in Substrait
> -------------------------------------------------------------------
>
>                 Key: ARROW-16152
>                 URL: https://issues.apache.org/jira/browse/ARROW-16152
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: C++
>            Reporter: Dewey Dunnington
>            Assignee: Dewey Dunnington
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a typo in {{ExtensionSet::Make()}} that causes a crash whenever somebody provides an unsupported function into the Substrait consumer. It looks like this was a copy/paste error here where {{type_ids}} should be {{function_ids}}.
> https://github.com/apache/arrow/blob/a935c81b595d24179e115d64cda944efa93aa0e0/cpp/src/arrow/engine/substrait/extension_set.cc#L167-L168
> To reproduce via the R bindings:
> {noformat}
> arrow:::do_exec_plan_substrait('
> {
>   "extensionUris": [
>     {
>       "extensionUriAnchor": 1
>     }
>   ],
>   "extensions": [
>     {
>       "extensionFunction": {
>         "extensionUriReference": 1,
>         "functionAnchor": 2,
>         "name": "abs_checked"
>       }
>     }
>   ],
>   "relations": [
>     {
>       "rel": {
>         "project": {
>           "input": {
>             "read": {
>               "baseSchema": {
>                 "names": [
>                   "letter",
>                   "number"
>                 ],
>                 "struct": {
>                   "types": [
>                     {
>                       "string": {
>                       }
>                     },
>                     {
>                       "i32": {
>                       }
>                     }
>                   ]
>                 }
>               },
>               "namedTable": {
>                 "names": [
>                   "named_table_1"
>                 ]
>               }
>             }
>           },
>           "expressions": [
>             {
>               "scalarFunction": {
>                 "functionReference": 2,
>                 "args": [
>                   {
>                     "selection": {
>                       "directReference": {
>                         "structField": {
>                           "field": 1
>                         }
>                       }
>                     }
>                   }
>                 ],
>                 "outputType": {
>                 }
>               }
>             }
>           ]
>         }
>       }
>     }
>   ]
> }
> ')
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)