Author: olga Date: Fri Dec 4 19:00:48 2009 New Revision: 887321 URL: http://svn.apache.org/viewvc?rev=887321&view=rev Log: PIG-1118: expression with aggregate functions returning null, with accumulate interface (yinghe via olgan)
Modified: hadoop/pig/branches/branch-0.6/CHANGES.txt hadoop/pig/branches/branch-0.6/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java hadoop/pig/branches/branch-0.6/test/org/apache/pig/test/TestAccumulator.java Modified: hadoop/pig/branches/branch-0.6/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/pig/branches/branch-0.6/CHANGES.txt?rev=887321&r1=887320&r2=887321&view=diff ============================================================================== --- hadoop/pig/branches/branch-0.6/CHANGES.txt (original) +++ hadoop/pig/branches/branch-0.6/CHANGES.txt Fri Dec 4 19:00:48 2009 @@ -131,6 +131,9 @@ BUG FIXES +PIG-1118: expression with aggregate functions returning null, with accumulate +interface (yinghe via olgan) + PIG-1113: Diamond query optimization throws error in JOIN (rding via olgan) PIG-1116: Remove redundant map-reduce job for merge join (pradeepkth) Modified: hadoop/pig/branches/branch-0.6/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java URL: http://svn.apache.org/viewvc/hadoop/pig/branches/branch-0.6/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java?rev=887321&r1=887320&r2=887321&view=diff ============================================================================== --- hadoop/pig/branches/branch-0.6/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java (original) +++ hadoop/pig/branches/branch-0.6/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java Fri Dec 4 19:00:48 2009 @@ -98,7 +98,9 @@ List<ExpressionOperator> l = getChildExpressions(); if (l != null) { for(ExpressionOperator e: l) { - return e.containUDF(); + if (e.containUDF()) { + return true; + } } } Modified: hadoop/pig/branches/branch-0.6/test/org/apache/pig/test/TestAccumulator.java URL: http://svn.apache.org/viewvc/hadoop/pig/branches/branch-0.6/test/org/apache/pig/test/TestAccumulator.java?rev=887321&r1=887320&r2=887321&view=diff ============================================================================== --- hadoop/pig/branches/branch-0.6/test/org/apache/pig/test/TestAccumulator.java (original) +++ hadoop/pig/branches/branch-0.6/test/org/apache/pig/test/TestAccumulator.java Fri Dec 4 19:00:48 2009 @@ -427,4 +427,18 @@ } } } + + public void testAccumWithMultiBuildin() throws IOException{ + pigServer.registerQuery("A = load '" + INPUT_FILE + "' as (id:int, c:chararray);"); + pigServer.registerQuery("C = group A by 1;"); + pigServer.registerQuery("D = foreach C generate SUM(A.id), 1+SUM(A.id)+SUM(A.id);"); + + Iterator<Tuple> iter = pigServer.openIterator("D"); + + while(iter.hasNext()) { + Tuple t = iter.next(); + t.get(0).toString().equals("1700"); + t.get(1).toString().equals("3401"); + } + } }