-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/19802/
-----------------------------------------------------------

Review request for drill.


Repository: drill-git


Description
-------

This patch will provide support of multiple "and" join condition in merge join 
operator.

Prior to this fix, Drill's merge join operator will either throw assertion 
error when assertion is enabled, or silently ignore the rest of join 
conditions, leading to incorrect query result, when assertion is disabled.

The patch will make sure all the join conditions will be checked. 


Diffs
-----

  
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java
 e30a649 
  
exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/join/TestMergeJoinMulCondition.java
 PRE-CREATION 
  exec/java-exec/src/test/resources/join/mj_multi_condition.json PRE-CREATION 

Diff: https://reviews.apache.org/r/19802/diff/


Testing
-------

1. A unit test case is added : TestMergeJoinMulCondition.java.  The test uses a 
physical plan generated from a TPCH-like query:

  select l.l_partkey, l.l_suppkey, ps.ps_partkey, ps.ps_suppkey 
  from cp.`tpch/lineitem.parquet` l join 
       cp.`tpch/partsupp.parquet` ps
  on l.l_partkey = ps.ps_partkey and 
     l.l_suppkey = ps.ps_suppkey;

2. Run the existing unit testcases.


Thanks,

Jinfeng Ni

Reply via email to