2626import java .util .Map ;
2727
2828/**
29- * All join type in Nereids.
29+ * All job type in Nereids.
3030 */
3131public enum JoinType {
3232 INNER_JOIN ,
@@ -55,7 +55,7 @@ public enum JoinType {
5555 .build ();
5656
5757 // TODO: the right-semi/right-anti/right-outer join is not derived in paper. We need to derive them
58- // TODO: add null rejecting conjunct check for assoc, l-assoc and r-assoc
58+
5959 /*ASSOC:
6060 * topJoin bottomJoin
6161 * / \ / \
@@ -69,24 +69,14 @@ public enum JoinType {
6969 */
7070 private static final Map <JoinType , ImmutableSet <JoinType >> assocJoinMatrix
7171 = ImmutableMap .<JoinType , ImmutableSet <JoinType >>builder ()
72- .put (CROSS_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
73- LEFT_OUTER_JOIN , FULL_OUTER_JOIN ))
74- .put (INNER_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
75- LEFT_OUTER_JOIN , FULL_OUTER_JOIN ))
72+ .put (CROSS_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN ))
73+ .put (INNER_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN ))
7674 .build ();
7775
7876 private static final Map <JoinType , ImmutableSet <JoinType >> lAssocJoinMatrix
7977 = ImmutableMap .<JoinType , ImmutableSet <JoinType >>builder ()
80- .put (CROSS_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
81- LEFT_OUTER_JOIN ))
82- .put (INNER_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
83- LEFT_OUTER_JOIN ))
84- .put (LEFT_SEMI_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
85- LEFT_OUTER_JOIN ))
86- .put (LEFT_ANTI_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
87- LEFT_OUTER_JOIN ))
88- .put (LEFT_OUTER_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN , LEFT_SEMI_JOIN , LEFT_ANTI_JOIN ,
89- LEFT_OUTER_JOIN ))
78+ .put (CROSS_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN ))
79+ .put (INNER_JOIN , ImmutableSet .of (CROSS_JOIN , INNER_JOIN ))
9080 .build ();
9181
9282 private static final Map <JoinType , ImmutableSet <JoinType >> rAssocJoinMatrix
0 commit comments