Author: shawkins
Date: 2011-11-03 14:55:56 -0400 (Thu, 03 Nov 2011)
New Revision: 3608
Modified:
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java
Log:
TEIID-964 adding support for pushing must pushdown functions in the select clause
Modified:
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java
===================================================================
---
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java 2011-11-03
18:52:41 UTC (rev 3607)
+++
trunk/engine/src/main/java/org/teiid/query/optimizer/relational/rules/RuleAssignOutputElements.java 2011-11-03
18:55:56 UTC (rev 3608)
@@ -534,6 +534,9 @@
if (function.getFunctionDescriptor().getPushdown() != PushDown.MUST_PUSHDOWN ||
EvaluatableVisitor.willBecomeConstant(function)) {
continue;
}
+ if (!getWindowFunctions(Arrays.asList(ss)).isEmpty()) {
+ break; //TODO: support subexpression pushing
+ }
//assume we need the whole thing
requiredSymbols.add(ss);
symbolRequired = true;
Show replies by date