You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2013/11/18 23:59:22 UTC

[jira] [Resolved] (DRILL-278) Join predicate with CHAR types hit run-time error

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

Jacques Nadeau resolved DRILL-278.
----------------------------------

    Resolution: Fixed

resolved in c591665

> Join predicate with CHAR types hit run-time error 
> --------------------------------------------------
>
>                 Key: DRILL-278
>                 URL: https://issues.apache.org/jira/browse/DRILL-278
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Jinfeng Ni
>            Assignee: Jinfeng Ni
>            Priority: Minor
>         Attachments: DRILL-278.patch.txt, DRILL-278.patch.txt
>
>
> If we join two tables with = predicate on two CHAR columns, drill will fail.
> SELECT S.S_ACCTBAL, S.S_NAME, N.N_NAME
> FROM
>  ( SELECT CAST(_MAP['S_ACCTBAL'] AS numeric) AS S_ACCTBAL,
>          CAST(_MAP['S_NAME'] AS VARCHAR) AS S_NAME,
>               _MAP['S_SUPPKEY'] AS S_SUPPKEY
>    FROM "/Users/jni//work/tpc-h-parquet/supplier") S
> join
>  ( SELECT  CAST(_MAP['N_NAME'] AS VARCHAR) AS N_NAME,
>            _MAP['N_NATIONKEY'] AS N_NATIONKEY
>    FROM "/Users/jni//work/tpc-h-parquet/nation" ) N
> on S.S_NAME = N.N_NAME;
> The error is raised when compiling a generated code for the join = predicate . 
> message: "Screen received stop request sent. < SchemaChangeException:[ org.apache.drill.exec.exception.ClassTransformationException: Failure generating transformation classes for value:
> If we replace the CHAR = predicate with a BIGINT = predicate, the query will run successfully.
> SELECT S.S_ACCTBAL, S.S_NAME, N.N_NAME
> FROM
>  ( SELECT CAST(_MAP['S_ACCTBAL'] AS numeric) AS S_ACCTBAL,
>          CAST(_MAP['S_NAME'] AS VARCHAR) AS S_NAME,
>               _MAP['S_SUPPKEY'] AS S_SUPPKEY
>    FROM "/Users/jni//work/tpc-h-parquet/supplier") S
> join
>  ( SELECT  CAST(_MAP['N_NAME'] AS VARCHAR) AS N_NAME,
>            _MAP['N_NATIONKEY'] AS N_NATIONKEY
>    FROM "/Users/jni//work/tpc-h-parquet/nation" ) N
> on S.S_SUPPKEY = N.N_NATIONKEY;
> Therefore, seems the CHAR join = predicate is not working properly. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)