Yingyi Bu 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)) {
> I changed OperatorPropertiesUtil.isMovable to return false in the case of a
OK, can you give me an example that moving a non-pure call is fine?


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
> This method isn't getting used in the join case.
But retainInput changes the semantics?

It propagates the input regardless it has a match or not in the BTree...
Do you have post-validate filters to prevent wrong results be generated?


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();
> This is just a quick way to find out whether there are any constants involv
Does the constant mean a real "constant" in the query, or it means a relative 
constant?


For example,

for $i in dataset foo

  let $j=current_time()

  for $k in dataset bar
  where
return ...


$j is not real constant, but a relative constant to the nested for loop.


-- 
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

Reply via email to