You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2016/03/04 20:58:40 UTC
[jira] [Commented] (DRILL-4475) Joins containing join key between
varbinary and non-varbinary fails
[ https://issues.apache.org/jira/browse/DRILL-4475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15180452#comment-15180452 ]
Jacques Nadeau commented on DRILL-4475:
---------------------------------------
This isn't a bug. SQL doesn't allow implicit casting between varbinary and varchar.
There is a bug in drill where it will sometimes let the user do this cast if Drill doesn't detect the type until late in execution.
> Joins containing join key between varbinary and non-varbinary fails
> -------------------------------------------------------------------
>
> Key: DRILL-4475
> URL: https://issues.apache.org/jira/browse/DRILL-4475
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Affects Versions: 1.5.0
> Reporter: Krystal
> Assignee: Sean Hsuan-Yi Chu
>
> Join queries that contain one join key as varbinary and the other join key as a non-varbinary such as varchar fails. For example:
> select s.name, s.age, s.gpa, v.registration from student_csv_v s inner join voter_csv_v v on (s.name = v.name);
> Error: VALIDATION ERROR: From line 1, column 95 to line 1, column 109: Cannot apply '=' to arguments of type '<VARBINARY(1)> = <CHAR(30)>'. Supported form(s): '<COMPARABLE_TYPE> = <COMPARABLE_TYPE>'
> s.name is a varbinary and v.name is char(30). Drill should implicitly cast the join keys to varchar at planning time.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)