You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Arina Ielchiieva (Jira)" <ji...@apache.org> on 2019/09/13 14:35:00 UTC

[jira] [Updated] (DRILL-7373) Fix problems involving reading from DICT type

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

Arina Ielchiieva updated DRILL-7373:
------------------------------------
    Reviewer: Igor Guzenko

> Fix problems involving reading from DICT type
> ---------------------------------------------
>
>                 Key: DRILL-7373
>                 URL: https://issues.apache.org/jira/browse/DRILL-7373
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.17.0
>            Reporter: Bohdan Kazydub
>            Assignee: Bohdan Kazydub
>            Priority: Major
>             Fix For: 1.17.0
>
>
> Add better support for different key types ({{boolean}}, {{decimal}}, {{float}}, {{double}} etc.) when retrieving values by key from {{DICT}} column  when querying data source with known (during query validation phase) field types (such as Hive table), so that actual key object instance  is created in generated code and is passed to given {{DICT}} reader instead of generating its value for every row based on {{int}} ({{ArraySegment}}) or {{String}} ({{NamedSegment}}) value.
> This may be achieved by storing original literal value of passed key (as {{Object}}) in {{PathSegment}} and its type (as {{MajorType}}) and using it during code generation when reading {{DICT}}'s values by key in {{EvaluationVisitor}}.
> Also, fix NPE when reading some cases involving reading values from {{DICT}} and fix wrong result when reading complex structures using many ITEM operators (i.e. , [] brackets), e.g. 
> {code}
> SELECT rid, mc.map_arr_map['key01'][1]['key01.1'] p16 FROM hive.map_complex_tbl mc
> {code}
> where {{map_arr_map}} is of following type: {{MAP<STRING, ARRAY<MAP<STRING, INT>>>}}



--
This message was sent by Atlassian Jira
(v8.3.2#803003)