You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tajo.apache.org by "Hyunsik Choi (JIRA)" <ji...@apache.org> on 2014/01/29 21:30:21 UTC
[jira] [Comment Edited] (TAJO-570) InvalidOperationException in
outer join with constant values
[ https://issues.apache.org/jira/browse/TAJO-570?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13885763#comment-13885763 ]
Hyunsik Choi edited comment on TAJO-570 at 1/29/14 8:30 PM:
------------------------------------------------------------
The patch includes one improvement and one bug fix related to this bug.
One improvement is to eliminate constant casting. Currently, a casting operation remains even if the casting is for constant. This improvement removes a constant casting operation and just replaces it by a pre-casted constant value. This improvement does not allow this bug case.
It also fixes a bug of LogicalPlanner::checkIfBeEvaluatedAtRelation. It works incorrectly if there is no column references (i.e., constant value) which is the same case to this bug. Hyoung jun pointed out this bug in offline, and I included it to this patch.
was (Author: hyunsik):
The patch includes one improvement and one bug fix related to this bug.
One improvement is to eliminate constant casting. Currently, a casting operation remains even if the casting is for constant. This improvement removes a constant casting operation and just replaces it by a pre-casted constant value. This improvement does not allow this bug case.
It also fixes a bug of LogicalPlanner::checkIfBeEvaluatedAtRelation. It works incorrectly if there is no column references (i.e., constant value) which is the same case to this bug. Hyoung jun pointed out this bug in offline, and I included it to this patch.
Either way fixes this bug, and I included both for potential bugs that we haven't found yet.
> InvalidOperationException in outer join with constant values
> ------------------------------------------------------------
>
> Key: TAJO-570
> URL: https://issues.apache.org/jira/browse/TAJO-570
> Project: Tajo
> Issue Type: Bug
> Components: planner/optimizer
> Reporter: Hyunsik Choi
> Assignee: Hyunsik Choi
> Fix For: 0.8-incubating
>
> Attachments: TAJO-570.patch, TAJO-570_2.patch
>
>
> {code}
> select
> a.name,
> 1::FLOAT,
> max_id
> from table1 a
> left outer join
> (select id, max(type) as max_id from table1 group by id) b
> on a.id = b.id
> {code}
> The above case causes the following error:
> {code}
> 2014-01-29 14:37:35,419 ERROR worker.Task (Task.java:run(378)) - org.apache.tajo.datum.exception.InvalidOperationException: Cannot equivalent check: TEXT and INT4
> at org.apache.tajo.datum.TextDatum.equalsTo(TextDatum.java:137)
> at org.apache.tajo.engine.eval.BinaryEval.eval(BinaryEval.java:134)
> at org.apache.tajo.engine.planner.physical.HashLeftOuterJoinExec.next(HashLeftOuterJoinExec.java:144)
> at org.apache.tajo.engine.planner.physical.HashShuffleFileWriteExec.next(HashShuffleFileWriteExec.java:117)
> at org.apache.tajo.worker.Task.run(Task.java:370)
> at org.apache.tajo.worker.TaskRunner$1.run(TaskRunner.java:392)
> at java.lang.Thread.run(Thread.java:662)
> {code}
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)