----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/32945/#review79455 -----------------------------------------------------------
exec/java-exec/src/main/java/org/apache/drill/exec/physical/config/NestedLoopJoinPOP.java <https://reviews.apache.org/r/32945/#comment128847> We could keep the join condition as a placeholder in the POP even though it will always be TRUE based on current generated plans. In future we can enhance to handle equality/non-equality etc. Also, keep the JoinType attribute to identify inner and outer joins.. exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/ExpandableHyperContainerContext.java <https://reviews.apache.org/r/32945/#comment128846> It would be preferable to avoid creating wrapper class unless really necessary; could the recordCounts be maintained in the ExpandableHyperContainer ? exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoinBatch.java <https://reviews.apache.org/r/32945/#comment128848> This says left batch, should be 'right' batch exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoinTemplate.java <https://reviews.apache.org/r/32945/#comment128858> Will this loop work for left outer join ? Suppose the right input is empty, we still want to produce all left rows. e.g in the following example query: SELECT * FROM t1 LEFT OUTER JOIN (SELECT * FROM t2 WHERE 1=0) ON 1=1 /* for cartesian join */ - Aman Sinha On April 8, 2015, 12:27 a.m., Mehant Baid wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/32945/ > ----------------------------------------------------------- > > (Updated April 8, 2015, 12:27 a.m.) > > > Review request for drill and Aman Sinha. > > > Repository: drill-git > > > Description > ------- > > This patch implements the nested loop join operator. The main changes are in > the files NestedLoopJoinBatch and NestedLoopJoinTemplate. This patch only > contains the execution changes. Planning patch will be posted in a separate > review request by Aman. > > > Diffs > ----- > > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/base/AbstractPhysicalVisitor.java > 27b0ecb > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/base/PhysicalVisitor.java > e6a89d0 > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/config/NestedLoopJoinPOP.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/ExpandableHyperContainerContext.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoin.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoinBatch.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoinBatchCreator.java > PRE-CREATION > > exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/NestedLoopJoinTemplate.java > PRE-CREATION > protocol/src/main/java/org/apache/drill/exec/proto/UserBitShared.java > 9a9d196 > protocol/src/main/protobuf/UserBitShared.proto 5e44655 > > Diff: https://reviews.apache.org/r/32945/diff/ > > > Testing > ------- > > The tests are dependent on the planning changes, hence not uploaded as part > of this patch. However > https://github.com/mehant/drill/blob/notin_1/exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/join/TestNestedLoopJoin.java > is a working branch that contains a bunch of tests (planning & execution) > added for nested loop join. > > > Thanks, > > Mehant Baid > >