You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Serhii Harnyk (JIRA)" <ji...@apache.org> on 2017/02/01 12:56:51 UTC

[jira] [Comment Edited] (DRILL-5237) FlattenRecordBatch loses nested fields from the schema when returns empty batches for the first time

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

Serhii Harnyk edited comment on DRILL-5237 at 2/1/17 12:56 PM:
---------------------------------------------------------------

This bug caused that FlattenRecordBatch loses nested fields from the schema when returns empty batches for the first time. When outer batches use these nested fields, they generate classes which operate with such fields like with constants. When next time FlattenRecordBatch returns non empty batch, generated classes of outer batches stay the same, so they returns wrong result.


was (Author: sharnyk):
This bug caused that FlattenRecordBatch loses nested fields from the schema when returns empty batches at first time. When outer batches use these nested fields, they generate classes which operate with such fields like with constants. When next time FlattenRecordBatch returns non empty batch, generated classes of outer batches stay the same, so they returns wrong result.

> FlattenRecordBatch loses nested fields from the schema when returns empty batches for the first time
> ----------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-5237
>                 URL: https://issues.apache.org/jira/browse/DRILL-5237
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Serhii Harnyk
>            Assignee: Serhii Harnyk
>         Attachments: test_data.tar.gz
>
>
> Query 
> {code:sql}
> select count(*) as col from (select t1.a.a1 from (select t.*, flatten(t.b) as b from dfs.`/tmp/test_data` t where t.c is not null) t1 where t1.a .a1 like 'a1');
> {code}
> returns different results for different values for option planner.width.max_per_node
> With options 
> {code:sql}
> alter session set `planner.slice_target` = 1;
> alter session set `planner.width.max_per_node` = 1;
> {code}
> query returns correct result:
> {noformat}
> +------+
> | col  |
> +------+
> | 3    |
> +------+
> {noformat}
> but with options 
> {code:sql}
> alter session set `planner.slice_target` = 1;
> alter session set `planner.width.max_per_node` = 3;
> {code}
> the same query returns wrong result 
> {noformat}
> +------+
> | col  |
> +------+
> | 2    |
> +------+
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)