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

ASF subversion and git services commented on IMPALA-12763:
----------------------------------------------------------

Commit 46f04313212952ae2e8f432cb622457918bae6cd in impala's branch 
refs/heads/master from Daniel Becker
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=46f043132 ]

IMPALA-12763: Union with string struct crashes in ASAN

In ASAN builds, if we UNION ALL an array containing a struct of a string
with itself, Impala crashes. This is how to reproduce it:

In Hive:
  create table su (arr ARRAY<STRUCT<s: STRING>>) stored as parquet;
  insert into su values (array(named_struct("s", "A")));

In Impala:
  select 1, arr from su
    union all select 2, arr from su;

The ASAN error message indicates a heap-use-after-free.

Normally, UNIONs of structs are not supported yet (see IMPALA-10752),
but if the struct is inside an array it is allowed now. This was
probably not intentional and it leads to the above error, so this change
disables structs in unions completely, including embedded structs.

Testing:
 - adjusted existing tests
 - added a query that tests that types with embedded structs are not
   allowed in a UNION statement, in mixed-collections-and-structs.test

Change-Id: Id728f1254b74636be594a33313a478b0b77c7ae4
Reviewed-on: http://gerrit.cloudera.org:8080/20970
Reviewed-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com>


> Union with string struct crashes in ASAN
> ----------------------------------------
>
>                 Key: IMPALA-12763
>                 URL: https://issues.apache.org/jira/browse/IMPALA-12763
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Backend
>            Reporter: Daniel Becker
>            Assignee: Daniel Becker
>            Priority: Major
>
> In ASAN builds if we UNION ALL an array containing a struct of a string with 
> itself Impala crashes. This is how to reproduce it:
> In Hive:
>  
> {code:java}
> create table su (arr ARRAY<STRUCT<s: STRING>>) stored as parquet;
> insert into su values (array(named_struct("s", "A")));
> {code}
> In Impala:
> {code:java}
> select 1, arr from su
>   union all select 2, arr from su;{code}
> The ASAN error message indicates a heap-use-after-free.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org
For additional commands, e-mail: issues-all-h...@impala.apache.org

Reply via email to