Yingyi Bu has posted comments on this change. Change subject: Index-only plan step 3: Top-down Select and Join transformation rule ......................................................................
Patch Set 46: (6 comments) https://asterix-gerrit.ics.uci.edu/#/c/1350/45/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AbstractIntroduceAccessMethodRule.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AbstractIntroduceAccessMethodRule.java: PS45, Line 389: Can we separate the function into two: boolean analyzeSelectOrJoinOp(...) void updateAM(...) In this way, we know the first function does not create side effects and the second function is supposed to only update sth. https://asterix-gerrit.ics.uci.edu/#/c/1350/46/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AccessMethodAnalysisContext.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AccessMethodAnalysisContext.java: PS46, Line 85: > Wrap a get and a put method and encapsulate the map so that we can easily track how a map gets inserted and read. PS46, Line 89: setIndexDatasetMap This method is not called. https://asterix-gerrit.ics.uci.edu/#/c/1350/46/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IntroduceJoinAccessMethodRule.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IntroduceJoinAccessMethodRule.java: PS46, Line 87: isLeftOuterJoin Now since you're doing top-down traversal, do you still need those states? PS46, Line 104: Override should you implement rewritePre(...) if you're doing top-down traversal? https://asterix-gerrit.ics.uci.edu/#/c/1350/46/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IntroduceSelectAccessMethodRule.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IntroduceSelectAccessMethodRule.java: PS46, Line 105: public boolean rewritePost(Mutable<ILogicalOperator> opRef, IOptimizationContext context) Should you use rewritePre(...) if you're doing top-down traversal? -- To view, visit https://asterix-gerrit.ics.uci.edu/1350 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I60a2a61eb46851d4c16c8f17447e3ac9b0aca779 Gerrit-PatchSet: 46 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Taewoo Kim <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-Reviewer: Taewoo Kim <[email protected]> Gerrit-Reviewer: Yingyi Bu <[email protected]> Gerrit-HasComments: Yes
