You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "David Li (Jira)" <ji...@apache.org> on 2021/09/29 15:46:00 UTC

[jira] [Commented] (ARROW-14105) [C++] Reconcile type promotion rules between if_else, case_when, coalesce, select

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

David Li commented on ARROW-14105:
----------------------------------

In particular, one thing that needs improvement is dictionary handling. Right now the type promotion values don't get applied to indices/values; we should do things like reconcile {{dictionary<int8, utf8>}} and {{dictionary<int32, binary>}} to {{dictionary<int32, binary>}}. It may be worth making the type promotion helpers iterator-based so that we can try to treat dictionaries uniformly as well, instead of having to copy descriptors around (though this requires the implementation to be in the header, unfortunately).

> [C++] Reconcile type promotion rules between if_else, case_when, coalesce, select
> ---------------------------------------------------------------------------------
>
>                 Key: ARROW-14105
>                 URL: https://issues.apache.org/jira/browse/ARROW-14105
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: David Li
>            Assignee: David Li
>            Priority: Major
>              Labels: kernel, types
>
> These functions are all conceptually similar and need to promote argument types to a common type. Right now they all have different type promotion heuristics, and there are a few in-progress PRs to improve type support; once those land, we should also reconcile the type promotion logic they use - presumably, all of them should be able to use the exact same logic in the end.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)