Jaehwa Jung created TAJO-1011:
---------------------------------
Summary: EvalTreeUtil::isJoinQual need to handle other join
conditions.
Key: TAJO-1011
URL: https://issues.apache.org/jira/browse/TAJO-1011
Project: Tajo
Issue Type: Bug
Components: planner/optimizer
Reporter: Jaehwa Jung
Assignee: Jaehwa Jung
Currently, EvalTreeUtil::isJoinQual doesn't handle as follows:
{code:title=Constant field|borderStyle=solid}
select * from lineitem where l_orderkey = 2;
{code}
{code:title=Alias field using function|borderStyle=solid}
select n1.n_nationkey, substr(n1.n_name, 1, 4) name1, substr(n2.n_name,
1, 4) name2
from nation n1 join nation n2 on substr(n1.n_name, 1, 4) = substr(n2.n_name, 1,
4)
order by n1.n_nationkey;
{code}
To above cases, current tajo can't pass unit test cases as follows:
{code:xml}
Failed tests:
testBroadcastPartitionTable(org.apache.tajo.engine.query.TestJoinBroadcast):
Table [customer_broad_parts] creation is failed.
testPartitionMultiplePartitionFilter(org.apache.tajo.engine.query.TestJoinOnPartitionedTables):
Table [customer_parts] creation is failed.
testFilterPushDownPartitionColumnCaseWhen(org.apache.tajo.engine.query.TestJoinOnPartitionedTables):
Table [customer_parts] creation is failed.
testRightOuterJoinPredicationCaseByCase3[0](org.apache.tajo.engine.query.TestJoinQuery):
expected:<[id,name,id,id(..)
testLeftOuterJoinPredicationCaseByCase3[0](org.apache.tajo.engine.query.TestJoinQuery):
expected:<[id,name,id,id(..)
testComplexJoinCondition4[0](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition5[0](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition6[0](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...0,ALGE,ALGE(..)
testOuterJoinAndCaseWhen1[0](org.apache.tajo.engine.query.TestJoinQuery):
Table [table1] creation is failed.
testRightOuterJoinPredicationCaseByCase3[1](org.apache.tajo.engine.query.TestJoinQuery):
expected:<[id,name,id,id(..)
testLeftOuterJoinPredicationCaseByCase3[1](org.apache.tajo.engine.query.TestJoinQuery):
expected:<[id,name,id,id(..)
testComplexJoinCondition4[1](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition5[1](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition6[1](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...0,ALGE,ALGE(..)
testOuterJoinAndCaseWhen1[1](org.apache.tajo.engine.query.TestJoinQuery):
Table [table1] creation is failed.
testComplexJoinCondition4[2](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition5[2](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition6[2](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...0,ALGE,ALGE(..)
testOuterJoinAndCaseWhen1[2](org.apache.tajo.engine.query.TestJoinQuery):
Table [table1] creation is failed.
testComplexJoinCondition4[3](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition5[3](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...-------(..)
testComplexJoinCondition6[3](org.apache.tajo.engine.query.TestJoinQuery):
Result Verification expected:<...0,ALGE,ALGE(..)
testOuterJoinAndCaseWhen1[3](org.apache.tajo.engine.query.TestJoinQuery):
Table [table1] creation is failed.
testSortWithDate(org.apache.tajo.engine.query.TestSortQuery): Table [table1]
creation is failed.
Tests in error:
testQ2FourJoins(org.apache.tajo.benchmark.TestTPCH):
java.util.NoSuchElementException(..)
testCastFromTable(org.apache.tajo.engine.eval.TestSQLExpression)
testEqual(org.apache.tajo.engine.planner.physical.TestBSTIndexExec)
testCreateScanWithFilterPlan(org.apache.tajo.engine.planner.physical.TestPhysicalPlanner)
testProjectionPush(org.apache.tajo.engine.planner.TestLogicalOptimizer)
testOptimizeWithGroupBy(org.apache.tajo.engine.planner.TestLogicalOptimizer)
testJoinWithMultipleJoinQual2(org.apache.tajo.engine.planner.TestLogicalPlanner)
testJoinWithMultipleJoinQual3(org.apache.tajo.engine.planner.TestLogicalPlanner)
testJoinWithMultipleJoinQual4(org.apache.tajo.engine.planner.TestLogicalPlanner)
{code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)