Steven Jacobs has posted comments on this change. Change subject: ASTERIXDB-1608, ASTERIXDB-1617 Match user query for nonpure function calls ......................................................................
Patch Set 12: (3 comments) https://asterix-gerrit.ics.uci.edu/#/c/1057/12/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushFieldAccessRule.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/PushFieldAccessRule.java: Line 190: if (annotation != null && !((Boolean) annotation)) { > OK, can you give me an example that moving a non-pure call is fine? In this case, it is actually deciding whether the field access can be pushed through op2. This is okay even when op2 is nonPure. https://asterix-gerrit.ics.uci.edu/#/c/1057/12/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AccessMethodUtils.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AccessMethodUtils.java: Line 668: //Get Variables used by afterSelectRefs that were created before the datasource > But retainInput changes the semantics? I don't quite understand this question. This method makes it so that, in the select case, if variables are used after the select, they are retained after the select. https://asterix-gerrit.ics.uci.edu/#/c/1057/12/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IOptimizableFuncExpr.java File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/IOptimizableFuncExpr.java: Line 80: ILogicalExpression[] getConstantExpressions(); > Does the constant mean a real "constant" in the query, or it means a relati Constants will only be "real constants" after this change. Previous changes allowed for other cases, but we will not allow for these anymore. -- To view, visit https://asterix-gerrit.ics.uci.edu/1057 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I2dec322b30835625430c06acd7626d902bada137 Gerrit-PatchSet: 12 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Steven Jacobs <sjaco...@ucr.edu> Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Gerrit-Reviewer: Michael Blow <mb...@apache.org> Gerrit-Reviewer: Preston Carman <prest...@apache.org> Gerrit-Reviewer: Steven Jacobs <sjaco...@ucr.edu> Gerrit-Reviewer: Taewoo Kim <wangs...@yahoo.com> Gerrit-Reviewer: Till Westmann <ti...@apache.org> Gerrit-Reviewer: Yingyi Bu <buyin...@gmail.com> Gerrit-HasComments: Yes