- Summary:
Fix bugzilla bug 125999 Strange filtering behaviour in aggregation functions
- Bugzilla Bug (s) Resolved:
[125999] Strange filtering behaviour in aggregation functions
- Description:
The original implementation will treat aggregations like Total.Sum(row[“col1”], row[“col2”]
== params[“para1”]) and Total.Sum(row[“col1”], row[“col2”] == params[“para2”]) as
same. This is however incorrect. The source of problem is that when generate
ComplexExpression instance, method ExpressionCompiler.flattenComplexExpression()
and AbstractExpressionCompiler.flattenComplexExpression() incorrectly populate
the subConstantExpression of a ComplexExpression instance. Fixed in source.
- Tests Description:
Junit Test
- Files Edited:
"/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/ExpressionCompiler.java"
"/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/AbstractExpressionParser.java"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/api/FeaturesTest.java"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/impl/ComplexExpressionCompilerTest.java"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/executor/cache/golden/CacheFeaturesTest.test11.txt"
"/org.eclipse.birt.data/test/org/eclipse/birt/data/engine/api/golden/FeaturesTest.test11.txt"
- Files Added:
N/A
- Files Deleted:
N/A
- Notes to Build Team:
N/A
- Notes to Developers:
N/A
- Notes to QA:
N/A
- Notes to Documentation:
N/A