Yingyi Bu has posted comments on this change. Change subject: ASTERIXDB-1018, ASTERIXDB-1017, ASTERIXDB-1019, ASTERIXDB-1029, ASTERIXDB-1030, ASTERIXDB-1034 ......................................................................
Patch Set 4: (5 comments) https://asterix-gerrit.ics.uci.edu/#/c/488/4/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/AbstractPhysicalOperator.java File algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/AbstractPhysicalOperator.java: Line 137: protected AlgebricksPipeline getPipeline(ILogicalPlan p, IOperatorSchema opSchema, PlanCompiler pc, Is the extraction of the getPipeline method necessary? https://asterix-gerrit.ics.uci.edu/#/c/488/4/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/SubplanPOperator.java File algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/SubplanPOperator.java: Line 113: protected AlgebricksPipeline[] compileSubplans(IOperatorSchema outerPlanSchema, Is this method identical to its parent class implementation in AbstractPhysicalOperator? Line 131: JobSpecification nestedJob = pc.compilePlan(p, outerPlanSchema, Is this override method used to mask the exceptions? That's our current limitation --- we don't have a join runtime nor a union-all runtime for nest-subplan. We have the micro-group-by and micro-sort, and need micro-join and micro-unionall. IMO, we should report those exceptions before we have the binary micro operators. I guess those six issues are probably not because we don't have micro-binary operators but because the optimizer does not eliminate the subplans as expected. https://asterix-gerrit.ics.uci.edu/#/c/488/4/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/IntroduceGroupByForSubplanRule.java File algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/IntroduceGroupByForSubplanRule.java: Line 202: pkVars.retainAll(producedVars); In which case a variable from the live variable in the subplanInput should be removed? Are producedVars always part of the liveVars at subplanInput? https://asterix-gerrit.ics.uci.edu/#/c/488/4/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/PushSelectIntoJoinRule.java File algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/PushSelectIntoJoinRule.java: Line 157: pushOps(pushedOnEither, joinBranchLeftRef, context); What would be an example of "independent op"? Just curious. -- To view, visit https://asterix-gerrit.ics.uci.edu/488 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I18cfa3875d676f71b26e91433ff101a7e725c890 Gerrit-PatchSet: 4 Gerrit-Project: hyracks Gerrit-Branch: master Gerrit-Owner: Steven Jacobs <sjaco...@ucr.edu> Gerrit-Reviewer: Ildar Absalyamov <ildar.absalya...@gmail.com> Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Gerrit-Reviewer: Preston Carman <prest...@apache.org> Gerrit-Reviewer: Steven Jacobs <sjaco...@ucr.edu> Gerrit-Reviewer: Till Westmann <ti...@apache.org> Gerrit-Reviewer: Yingyi Bu <buyin...@gmail.com> Gerrit-HasComments: Yes