Wenhai Li has posted comments on this change. Change subject: Applied the multiway fuzzyjoin based on the prefix-based join and the selectFuzzyJoin testCases. ......................................................................
Patch Set 34: (13 comments) Two Taewoo. Please refer to the newest version. https://asterix-gerrit.ics.uci.edu/#/c/1076/34/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/FuzzyJoinRule.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/FuzzyJoinRule.java: Line 166: List<Mutable<ILogicalExpression>> inputExps = simFuncExpr.getArguments(); > inputExp -> inputExprs Done Line 199: // leftInputPKs extract all the PKs derived from the downstream of the left branch. > Please rephrase these statements. Also, can you put more explanations on "p Done Line 206: Collection<LogicalVariable> currentPK = new HashSet<>(); > currentPK -> currentPKs Done Line 219: // Avoid the duplicated pk generation in findPrimaryKeysInSubplan, especially for multiway fuzzy join. > pk -> PK Done Line 223: if (leftInputPKs == null || rightInputPKs == null) { > Check the above SonarQube comment. leftInputPKs or rightInputPKs will not b Done Line 229: // left-hand side and right-hand side of "~=" has the same type > "~=" -> fuzzy join Done Line 230: IAType left2 = TypeComputeUtils.getActualType(leftType); > left2 -> actualLeftType Done Line 231: IAType right2 = TypeComputeUtils.getActualType(rightType); > right2 -> actualRightType Done Line 304: throw new AlgebricksException("The given condition for the fuzzy join (" + joinOp.getJoinKind() > Follow the new Exception Handling proposal. AlgebricksException should be r Done Line 311: // the shared token to the actually tuples of both side. left(right)InputPK is used to extract those mappings > left(right)InputPK -> left(right)InputPKs Done Line 382: for (int i = 1; i < 4; i++) { > initialize constant 1 as like static final int STAGE_1_INDEX = 1; Done Line 417: // Since the above substitution (line 150) generates the prefix-based join operators for the partial simJoin > Rather than using a line number such as 150, please refer to the method or Done Line 478: @Override public boolean rewritePre(Mutable<ILogicalOperator> opRef, IOptimizationContext context) > This method is not required since the it just repeats the default method of Done -- To view, visit https://asterix-gerrit.ics.uci.edu/1076 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I8736f104905eeda763d39709e002c2b9629278cc Gerrit-PatchSet: 34 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Wenhai Li <lwhaym...@yahoo.com> Gerrit-Reviewer: Chen Li <che...@gmail.com> Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Gerrit-Reviewer: Taewoo Kim <wangs...@yahoo.com> Gerrit-Reviewer: Wenhai Li <lwhaym...@yahoo.com> Gerrit-HasComments: Yes