Author: gates
Date: Mon Jun 30 13:21:40 2008
New Revision: 672899

URL: http://svn.apache.org/viewvc?rev=672899&view=rev
Log:
PIG-158 Santhosh's multiple_column_project patch.  Fixes POProject to support 
projecting multiple columns.


Modified:
    
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LODistinct.java
    
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOFilter.java
    
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOSort.java
    
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LogToPhyTranslationVisitor.java
    
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/parser/QueryParser.jjt
    
incubator/pig/branches/types/src/org/apache/pig/impl/physicalLayer/expressionOperators/POProject.java
    
incubator/pig/branches/types/test/org/apache/pig/test/TestLogicalPlanBuilder.java
    incubator/pig/branches/types/test/org/apache/pig/test/TestProject.java
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Arithmetic.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/BinCond.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Cogroup.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Comparison.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/ComplexForeach.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Generate.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/IsNull1.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC15.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC16.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Sort.gld
    
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Split1.gld

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LODistinct.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LODistinct.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LODistinct.java
 (original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LODistinct.java
 Mon Jun 30 13:21:40 2008
@@ -68,8 +68,13 @@
                     throw new FrontendException("Could not find operator in 
plan");
                 }
                 if(op instanceof ExpressionOperator) {
-                    fss.add(((ExpressionOperator)op).getFieldSchema());
-                    mSchema = new Schema(fss);
+                    Schema.FieldSchema fs = 
((ExpressionOperator)op).getFieldSchema();
+                    if(DataType.isSchemaType(fs.type)) {
+                        mSchema = fs.schema;
+                    } else {
+                        fss.add(fs);
+                        mSchema = new Schema(fss);
+                    }
                 } else {
                     mSchema = op.getSchema();
                 }

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOFilter.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOFilter.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOFilter.java 
(original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOFilter.java 
Mon Jun 30 13:21:40 2008
@@ -68,8 +68,13 @@
             ArrayList<Schema.FieldSchema> fss = new 
ArrayList<Schema.FieldSchema>();
             try {
                 if(mInput instanceof ExpressionOperator) {
-                    fss.add(((ExpressionOperator)mInput).getFieldSchema());
-                    mSchema = new Schema(fss);
+                    Schema.FieldSchema fs = 
((ExpressionOperator)mInput).getFieldSchema();
+                    if(DataType.isSchemaType(fs.type)) {
+                        mSchema = fs.schema;
+                    } else {
+                        fss.add(fs);
+                        mSchema = new Schema(fss);
+                    }
                 } else {
                     mSchema = mInput.getSchema();
                 }

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOSort.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOSort.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOSort.java 
(original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LOSort.java 
Mon Jun 30 13:21:40 2008
@@ -112,8 +112,13 @@
                     throw new FrontendException("Could not find operator in 
plan");
                 }
                 if(op instanceof ExpressionOperator) {
-                    fss.add(((ExpressionOperator)op).getFieldSchema());
-                    mSchema = new Schema(fss);
+                    Schema.FieldSchema fs = 
((ExpressionOperator)op).getFieldSchema();
+                    if(DataType.isSchemaType(fs.type)) {
+                        mSchema = fs.schema;
+                    } else {
+                        fss.add(fs);
+                        mSchema = new Schema(fss);
+                    }
                 } else {
                     mSchema = op.getSchema();
                 }

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LogToPhyTranslationVisitor.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LogToPhyTranslationVisitor.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LogToPhyTranslationVisitor.java
 (original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/LogToPhyTranslationVisitor.java
 Mon Jun 30 13:21:40 2008
@@ -587,7 +587,7 @@
         POProject exprOp = new POProject(new OperatorKey(scope, nodeGen
                 .getNextNodeId(scope)), op.getRequestedParallelism());
         exprOp.setResultType(op.getType());
-        exprOp.setColumn(op.getCol());
+        exprOp.setColumns((ArrayList)op.getProjection());
         exprOp.setStar(op.isStar());
         LogicalPlan lp = op.mPlan;
         LogToPhyMap.put(op, exprOp);

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/parser/QueryParser.jjt
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/parser/QueryParser.jjt?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/parser/QueryParser.jjt
 (original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/logicalLayer/parser/QueryParser.jjt
 Mon Jun 30 13:21:40 2008
@@ -1393,13 +1393,18 @@
 {
        ExpressionOperator cond; 
        Schema subSchema = null; 
-       ExpressionOperator eOp; 
+       LogicalOperator eOp; 
        LogicalPlan conditionPlan = new LogicalPlan(); 
+    Token t;
        log.trace("Entering NestedFilter");
 }
 {
        (
-       <FILTER>  eOp = BaseEvalSpec(over, specs, lp, input)
+       <FILTER>
+    (
+    LOOKAHEAD({ null != specs.get(getToken(1).image) }) t = <IDENTIFIER> {eOp 
= specs.get(t.image);}
+|   eOp = BaseEvalSpec(over, specs, lp, input)
+    )
        {subSchema = eOp.getSchema();}
        <BY> cond = PCond(subSchema,null,conditionPlan,input)
        )
@@ -1426,25 +1431,17 @@
        ArrayList<LogicalPlan> sortColPlans = new ArrayList<LogicalPlan>(); 
        ArrayList<Boolean> ascOrder = new ArrayList<Boolean>(); 
        String funcName = null; 
-       ExpressionOperator eOp;
+       LogicalOperator eOp;
        Token t; 
        boolean asc = true; 
        log.trace("Entering NestedSortOrArrange");}
 {
        (
-       ( t = <ORDER> | t = <ARRANGE> )
-       (
-               eOp = BaseEvalSpec(over, specs, lp, input)
-               {
-                       try{
-                               eOp.getSchema();
-                       }catch(FrontendException fe) {
-                               ParseException pe = new 
ParseException(fe.getMessage());
-                               throw pe;
-                       }
-                       log.debug("Before BY");
-               }               
-       )
+       ( <ORDER> | <ARRANGE> )
+    (
+    LOOKAHEAD({ null != specs.get(getToken(1).image) }) t = <IDENTIFIER> {eOp 
= specs.get(t.image);}
+|   eOp = BaseEvalSpec(over, specs, lp, input)
+    )
        <BY> 
        (
                (
@@ -1491,12 +1488,16 @@
 LogicalOperator NestedDistinct(Schema over, Map<String, LogicalOperator> 
specs, LogicalPlan lp, LogicalOperator input):
 {
        Token t; 
-       ExpressionOperator eOp; 
+       LogicalOperator eOp; 
        log.trace("Entering NestedDistinct");
 }
 {
        (
-       <DISTINCT> eOp = BaseEvalSpec(over, specs, lp, input)
+       <DISTINCT>
+    (
+    LOOKAHEAD({ null != specs.get(getToken(1).image) }) t = <IDENTIFIER> {eOp 
= specs.get(t.image);}
+|   eOp = BaseEvalSpec(over, specs, lp, input)
+    )
        )
        { 
                lp.add(eOp);

Modified: 
incubator/pig/branches/types/src/org/apache/pig/impl/physicalLayer/expressionOperators/POProject.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/impl/physicalLayer/expressionOperators/POProject.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/src/org/apache/pig/impl/physicalLayer/expressionOperators/POProject.java
 (original)
+++ 
incubator/pig/branches/types/src/org/apache/pig/impl/physicalLayer/expressionOperators/POProject.java
 Mon Jun 30 13:21:40 2008
@@ -19,6 +19,7 @@
 
 import java.util.Iterator;
 import java.util.Map;
+import java.util.ArrayList;
 
 import org.apache.pig.backend.executionengine.ExecException;
 import org.apache.pig.data.BagFactory;
@@ -32,6 +33,8 @@
 import org.apache.pig.impl.physicalLayer.Result;
 import org.apache.pig.impl.physicalLayer.plans.PhyPlanVisitor;
 import org.apache.pig.impl.plan.VisitorException;
+import org.apache.pig.data.TupleFactory;
+import org.apache.pig.data.Tuple;
 
 /**
  * Implements the overloaded form of the project operator.
@@ -47,8 +50,10 @@
      */
     private static final long serialVersionUID = 1L;
 
+       private static TupleFactory tupleFactory = TupleFactory.getInstance();
+
     //The column to project
-    int column = 0;
+    ArrayList<Integer> columns;
     
     //True if we are in the middle of streaming tuples
     //in a bag
@@ -75,13 +80,19 @@
     
     public POProject(OperatorKey k, int rp, int col) {
         super(k, rp);
-        this.column = col;
+        columns = new ArrayList<Integer>();
+        columns.add(col);
+    }
+
+    public POProject(OperatorKey k, int rp, ArrayList<Integer> cols) {
+        super(k, rp);
+        columns = cols;
     }
 
     @Override
     public String name() {
         
-        return "Project" + "[" + DataType.findTypeName(resultType) + "]" +"(" 
+ ((star) ? "*" : column) + ") - " + mKey.toString();
+        return "Project" + "[" + DataType.findTypeName(resultType) + "]" + 
((star) ? "[*]" : columns) + " - " + mKey.toString();
     }
 
     @Override
@@ -118,11 +129,24 @@
      */
     public Result getNext() throws ExecException{
         Result res = processInput();
+        Tuple inpValue = (Tuple)res.result;
 
+        Object ret;
         if(res.returnStatus != POStatus.STATUS_OK){
             return res;
         }
-        res.result = ((Tuple)res.result).get(column);
+        if(columns.size() == 1) {
+            ret = inpValue.get(columns.get(0));
+        } else {
+               //TupleFactory tupleFactory = TupleFactory.getInstance();
+               ArrayList<Object> objList = new 
ArrayList<Object>(columns.size()); 
+                
+            for(int i: columns) {
+               objList.add(inpValue.get(i)); 
+            }
+                   ret = tupleFactory.newTuple(objList);
+        }
+        res.result = ret;
         return res;
     }
 
@@ -141,7 +165,8 @@
         }
         DataBag outBag = BagFactory.getInstance().newDefaultBag();
         for (Tuple tuple : inpBag) {
-            Tuple tmpTuple = 
TupleFactory.getInstance().newTuple(tuple.get(column));
+            //Tuple tmpTuple = 
TupleFactory.getInstance().newTuple(tuple.get(columns.get(0)));
+            Tuple tmpTuple = tupleFactory.newTuple(tuple.get(columns.get(0)));
             outBag.add(tmpTuple);
         }
         res.result = outBag;
@@ -210,7 +235,22 @@
             inpValue = (Tuple)res.result;
             res.result = null;
             
-            Object ret = inpValue.get(column);
+            Object ret;
+
+            if(columns.size() == 1) {
+                ret = inpValue.get(columns.get(0));
+            } else {
+                   //TupleFactory tupleFactory = TupleFactory.getInstance();
+                   ArrayList<Object> objList = new 
ArrayList<Object>(columns.size()); 
+                
+                for(int i: columns) {
+                   objList.add(inpValue.get(i)); 
+                }
+                       ret = tupleFactory.newTuple(objList);
+                res.result = (Tuple)ret;
+                return res;
+            }
+
             if(overloaded){
                 DataBag retBag = (DataBag)ret;
                 bagIterator = retBag.iterator();
@@ -236,12 +276,30 @@
         }
     }
 
+    public ArrayList<Integer> getColumns() {
+        return columns;
+    }
+
     public int getColumn() {
-        return column;
+        if(columns.size() != 1) {
+            throw new RuntimeException(
+            "Internal error: improper use of getColumn in "
+            + POProject.class.getName());
+        }
+        return columns.get(0);
     }
 
-    public void setColumn(int column) {
-        this.column = column;
+    public void setColumns(ArrayList<Integer> cols) {
+        this.columns = cols;
+    }
+
+    public void setColumn(int col) {
+        if(null == columns) {
+            columns = new ArrayList<Integer>();
+        } else {
+            columns.clear();
+        }
+        columns.add(col);
     }
 
     public boolean isOverloaded() {
@@ -275,7 +333,7 @@
         if(!isInputAttached())
             return inputs.get(0).getNext(dummyBag);
         else{
-            res.result = (DataBag)input.get(column);
+            res.result = (DataBag)input.get(columns.get(0));
             res.returnStatus = POStatus.STATUS_OK;
             return res;
         }

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/TestLogicalPlanBuilder.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/TestLogicalPlanBuilder.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/TestLogicalPlanBuilder.java
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/TestLogicalPlanBuilder.java
 Mon Jun 30 13:21:40 2008
@@ -907,6 +907,34 @@
         buildPlan("e = foreach c generate $0, ($1 IS NOT NULL ? $1 - 5 : 0);");
     }
 
+    @Test 
+    public void testQuery80() {
+        buildPlan("a = load 'input1' as (name, age, gpa);");
+        buildPlan("b = filter a by age < '20';");
+        buildPlan("c = group b by age;");
+        String query = "d = foreach c {" 
+            + "cf = filter b by gpa < '3.0';"
+            + "cp = cf.gpa;"
+            + "cd = distinct cp;"
+            + "co = order cd by gpa;"
+            + "generate group, flatten(co);"
+            //+ "generate group, flatten(cd);"
+            + "};";
+        printPlan(buildPlan(query));
+    }
+
+    //TODO
+    //The parser does not handle logical operators (AND/OR) in conjunction
+    //with comparison operators (>, <, ...)
+    /*
+    @Test
+    public void testQuery81() {
+        buildPlan("a = load 'input1' using PigStorage() as (name, age, gpa);");
+        //buildPlan("split a into b if name lt 'f', c if (name ge 'f' and name 
le 'h'), d if name gt 'h';");
+        buildPlan("split a into b if name lt 'f', c if (name ge 'f') and (name 
le 'h');");
+    }
+    */
+    
     private void printPlan(LogicalPlan lp) {
         LOPrinter graphPrinter = new LOPrinter(System.err, lp);
         System.err.println("Printing the logical plan");

Modified: incubator/pig/branches/types/test/org/apache/pig/test/TestProject.java
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/TestProject.java?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- incubator/pig/branches/types/test/org/apache/pig/test/TestProject.java 
(original)
+++ incubator/pig/branches/types/test/org/apache/pig/test/TestProject.java Mon 
Jun 30 13:21:40 2008
@@ -22,10 +22,12 @@
 import java.io.IOException;
 import java.util.Iterator;
 import java.util.Random;
+import java.util.ArrayList;
 
 import org.apache.pig.backend.executionengine.ExecException;
 import org.apache.pig.data.DataBag;
 import org.apache.pig.data.DataType;
+import org.apache.pig.data.TupleFactory;
 import org.apache.pig.data.Tuple;
 import org.apache.pig.impl.physicalLayer.POStatus;
 import org.apache.pig.impl.physicalLayer.Result;
@@ -100,4 +102,58 @@
         assertEquals(t.get(9), res.result);
     }
 
+    @Test
+    public void testGetNextMultipleProjections() throws ExecException, 
IOException {
+        ArrayList<Integer> cols = new ArrayList<Integer>();
+        proj.attachInput(t);
+        for (int j = 0; j < t.size() - 1; j++) {
+            proj.attachInput(t);
+            cols.add(j);
+            cols.add(j+1);
+            proj.setColumns(cols);
+
+            res = proj.getNext();
+               TupleFactory tupleFactory = TupleFactory.getInstance();
+               ArrayList<Object> objList = new ArrayList<Object>(); 
+            objList.add(t.get(j)); 
+            objList.add(t.get(j+1)); 
+                   Tuple expectedResult = tupleFactory.newTuple(objList);
+            assertEquals(POStatus.STATUS_OK, res.returnStatus);
+            assertEquals(expectedResult, res.result);
+            cols.clear();
+        }
+    }
+
+    @Test
+    public void testGetNextTupleMultipleProjections() throws IOException, 
ExecException {
+        proj.attachInput(t);
+        proj.setOverloaded(true);
+        int j = 0;
+        ArrayList<Integer> cols = new ArrayList<Integer>();
+
+        while (true) {
+            cols.add(j);
+            cols.add(j+1);
+            proj.setColumns(cols);
+            res = proj.getNext(t);
+            if (res.returnStatus == POStatus.STATUS_EOP)
+                break;
+               TupleFactory tupleFactory = TupleFactory.getInstance();
+               ArrayList<Object> objList = new ArrayList<Object>(); 
+            objList.add(t.get(j)); 
+            objList.add(t.get(j+1)); 
+                   Tuple expectedResult = tupleFactory.newTuple(objList);
+            assertEquals(POStatus.STATUS_OK, res.returnStatus);
+            assertEquals(expectedResult, res.result);
+            ++j;
+            cols.clear();
+        }
+
+        proj.attachInput(t);
+        proj.setColumn(9);
+        proj.setOverloaded(false);
+        res = proj.getNext(t);
+        assertEquals(POStatus.STATUS_OK, res.returnStatus);
+        assertEquals(t.get(9), res.result);
+    }
 }

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Arithmetic.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Arithmetic.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Arithmetic.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Arithmetic.gld
 Mon Jun 30 13:21:40 2008
@@ -4,9 +4,9 @@
 |   |
 |   |---Add[Unknown] - Test-Plan-Builder-77
 |   |   |
-|   |   |---Project[bytearray](0) - Test-Plan-Builder-75
+|   |   |---Project[bytearray][0] - Test-Plan-Builder-75
 |   |   |
-|   |   |---Project[bytearray](1) - Test-Plan-Builder-76
+|   |   |---Project[bytearray][1] - Test-Plan-Builder-76
 |   |
 |   |---Constant(5) - Test-Plan-Builder-78
 |   |
@@ -14,11 +14,11 @@
 |   |
 |   |---Subtract[Unknown] - Test-Plan-Builder-82
 |   |   |
-|   |   |---Project[bytearray](0) - Test-Plan-Builder-80
+|   |   |---Project[bytearray][0] - Test-Plan-Builder-80
 |   |   |
 |   |   |---Constant(5) - Test-Plan-Builder-81
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-83
+|   |---Project[bytearray][1] - Test-Plan-Builder-83
 |   |
 |   Constant(hello) - Test-Plan-Builder-85
 |

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/BinCond.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/BinCond.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/BinCond.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/BinCond.gld
 Mon Jun 30 13:21:40 2008
@@ -4,20 +4,20 @@
 |   |
 |   |---Equal To[tuple] - Test-Plan-Builder-129
 |   |   |
-|   |   |---Project[bytearray](1) - Test-Plan-Builder-127
+|   |   |---Project[bytearray][1] - Test-Plan-Builder-127
 |   |   |
 |   |   |---Constant(3) - Test-Plan-Builder-128
 |   |
 |   |---Add[Unknown] - Test-Plan-Builder-132
 |   |   |
-|   |   |---Project[bytearray](2) - Test-Plan-Builder-130
+|   |   |---Project[bytearray][2] - Test-Plan-Builder-130
 |   |   |
-|   |   |---Project[bytearray](3) - Test-Plan-Builder-131
+|   |   |---Project[bytearray][3] - Test-Plan-Builder-131
 |   |
 |   |---Subtract[Unknown] - Test-Plan-Builder-135
 |       |
-|       |---Project[bytearray](2) - Test-Plan-Builder-133
+|       |---Project[bytearray][2] - Test-Plan-Builder-133
 |       |
-|       |---Project[bytearray](3) - Test-Plan-Builder-134
+|       |---Project[bytearray][3] - Test-Plan-Builder-134
 |
 |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-126
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Cogroup.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Cogroup.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Cogroup.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Cogroup.gld
 Mon Jun 30 13:21:40 2008
@@ -6,15 +6,15 @@
     |   |   |
     |   |   Add[Unknown] - Test-Plan-Builder-49
     |   |   |
-    |   |   |---Project[bytearray](0) - Test-Plan-Builder-47
+    |   |   |---Project[bytearray][0] - Test-Plan-Builder-47
     |   |   |
-    |   |   |---Project[bytearray](1) - Test-Plan-Builder-48
+    |   |   |---Project[bytearray][1] - Test-Plan-Builder-48
     |   |   |
     |   |   Subtract[Unknown] - Test-Plan-Builder-52
     |   |   |
-    |   |   |---Project[bytearray](0) - Test-Plan-Builder-50
+    |   |   |---Project[bytearray][0] - Test-Plan-Builder-50
     |   |   |
-    |   |   |---Project[bytearray](1) - Test-Plan-Builder-51
+    |   |   |---Project[bytearray][1] - Test-Plan-Builder-51
     |   |
     |   |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-42
     |
@@ -22,14 +22,14 @@
         |   |
         |   Add[Unknown] - Test-Plan-Builder-56
         |   |
-        |   |---Project[bytearray](0) - Test-Plan-Builder-54
+        |   |---Project[bytearray][0] - Test-Plan-Builder-54
         |   |
-        |   |---Project[bytearray](1) - Test-Plan-Builder-55
+        |   |---Project[bytearray][1] - Test-Plan-Builder-55
         |   |
         |   Subtract[Unknown] - Test-Plan-Builder-59
         |   |
-        |   |---Project[bytearray](0) - Test-Plan-Builder-57
+        |   |---Project[bytearray][0] - Test-Plan-Builder-57
         |   |
-        |   |---Project[bytearray](1) - Test-Plan-Builder-58
+        |   |---Project[bytearray][1] - Test-Plan-Builder-58
         |
         |---Load(b:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-43
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Comparison.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Comparison.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Comparison.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Comparison.gld
 Mon Jun 30 13:21:40 2008
@@ -4,17 +4,17 @@
 |   |
 |   |---Add[Unknown] - Test-Plan-Builder-104
 |   |   |
-|   |   |---Project[bytearray](0) - Test-Plan-Builder-102
+|   |   |---Project[bytearray][0] - Test-Plan-Builder-102
 |   |   |
-|   |   |---Project[bytearray](1) - Test-Plan-Builder-103
+|   |   |---Project[bytearray][1] - Test-Plan-Builder-103
 |   |
 |   |---Multiply[Unknown] - Test-Plan-Builder-111
 |       |
 |       |---Subtract[Unknown] - Test-Plan-Builder-107
 |       |   |
-|       |   |---Project[bytearray](0) - Test-Plan-Builder-105
+|       |   |---Project[bytearray][0] - Test-Plan-Builder-105
 |       |   |
-|       |   |---Project[bytearray](1) - Test-Plan-Builder-106
+|       |   |---Project[bytearray][1] - Test-Plan-Builder-106
 |       |
 |       |---Divide[Unknown] - Test-Plan-Builder-110
 |           |

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/ComplexForeach.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/ComplexForeach.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/ComplexForeach.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/ComplexForeach.gld
 Mon Jun 30 13:21:40 2008
@@ -1,15 +1,15 @@
 New For Each(false)[bag] - Test-Plan-Builder-16
 |   |
-|   Project[tuple](*) - Test-Plan-Builder-15
+|   Project[tuple][*] - Test-Plan-Builder-15
 |   |
 |   |---Filter[bag] - Test-Plan-Builder-11
 |       |   |
 |       |   Equal To[tuple] - Test-Plan-Builder-14
 |       |   |
-|       |   |---Project[bytearray](1) - Test-Plan-Builder-12
+|       |   |---Project[bytearray][1] - Test-Plan-Builder-12
 |       |   |
-|       |   |---Project[bytearray](2) - Test-Plan-Builder-13
+|       |   |---Project[bytearray][2] - Test-Plan-Builder-13
 |       |
-|       |---Project[bytearray](0) - Test-Plan-Builder-10
+|       |---Project[bytearray][0] - Test-Plan-Builder-10
 |
 |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-9
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Generate.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Generate.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Generate.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Generate.gld
 Mon Jun 30 13:21:40 2008
@@ -2,36 +2,36 @@
 |   |
 |   Add[Unknown] - Test-Plan-Builder-161
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-159
+|   |---Project[bytearray][1] - Test-Plan-Builder-159
 |   |
-|   |---Project[bytearray](2) - Test-Plan-Builder-160
+|   |---Project[bytearray][2] - Test-Plan-Builder-160
 |   |
 |   Subtract[Unknown] - Test-Plan-Builder-164
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-162
+|   |---Project[bytearray][1] - Test-Plan-Builder-162
 |   |
-|   |---Project[bytearray](2) - Test-Plan-Builder-163
+|   |---Project[bytearray][2] - Test-Plan-Builder-163
 |   |
 |   Multiply[Unknown] - Test-Plan-Builder-167
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-165
+|   |---Project[bytearray][1] - Test-Plan-Builder-165
 |   |
-|   |---Project[bytearray](2) - Test-Plan-Builder-166
+|   |---Project[bytearray][2] - Test-Plan-Builder-166
 |   |
 |   Divide[Unknown] - Test-Plan-Builder-170
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-168
+|   |---Project[bytearray][1] - Test-Plan-Builder-168
 |   |
-|   |---Project[bytearray](2) - Test-Plan-Builder-169
+|   |---Project[bytearray][2] - Test-Plan-Builder-169
 |   |
 |   Mod[Unknown] - Test-Plan-Builder-173
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-171
+|   |---Project[bytearray][1] - Test-Plan-Builder-171
 |   |
-|   |---Project[bytearray](2) - Test-Plan-Builder-172
+|   |---Project[bytearray][2] - Test-Plan-Builder-172
 |   |
 |   PONegative[tuple] - Test-Plan-Builder-175
 |   |
-|   |---Project[bytearray](1) - Test-Plan-Builder-174
+|   |---Project[bytearray][1] - Test-Plan-Builder-174
 |
 |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-158
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/IsNull1.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/IsNull1.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/IsNull1.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/IsNull1.gld
 Mon Jun 30 13:21:40 2008
@@ -1,20 +1,20 @@
 Filter[tuple] - Test-Plan-Builder-214
 |   |
-|   POIsNull[tuple] - Test-Plan-Builder-216
+|   Not[boolean] - Test-Plan-Builder-217
 |   |
-|   |---Project[bytearray](0) - Test-Plan-Builder-215
+|   |---POIsNull[tuple] - Test-Plan-Builder-216
+|       |
+|       |---Project[bytearray][0] - Test-Plan-Builder-215
 |
 |---Split - Test-Plan-Builder-213
     |
     |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-212
 
-Filter[tuple] - Test-Plan-Builder-217
+Filter[tuple] - Test-Plan-Builder-218
 |   |
-|   Not[boolean] - Test-Plan-Builder-220
+|   POIsNull[tuple] - Test-Plan-Builder-220
 |   |
-|   |---POIsNull[tuple] - Test-Plan-Builder-219
-|       |
-|       |---Project[bytearray](0) - Test-Plan-Builder-218
+|   |---Project[bytearray][0] - Test-Plan-Builder-219
 |
 |---Split - Test-Plan-Builder-213
     |

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC15.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC15.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC15.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC15.gld
 Mon Jun 30 13:21:40 2008
@@ -1,58 +1,52 @@
-MapReduce(-1,GFCross) - -166:
-|   Store(DummyFil:DummyLdr) - -5165956429696944631
+MapReduce(1,GFCross) - -166:
+|   Store(DummyFil:DummyLdr) - -6139496040975471496
 |   |
-|   |---For Each[tuple] - -2197807331204639125
+|   |---New For Each(false)[tuple] - -5878058249424113280
 |       |   |
-|       |   POGenerate(false)  - --8447156979210379761
-|       |   |   |
-|       |   |   POUserFunc(org.apache.pig.impl.builtin.GFCross)[tuple] - 
-6139496040975471496
-|       |   |   |
-|       |   |   |---Project[tuple](*) - -5878058249424113280
+|       |   POUserFunc(org.apache.pig.impl.builtin.GFCross)[tuple] - 
-7085374960058856883
+|       |   |
+|       |   |---Project[tuple][*] - -7856319821130535798
 |       |
-|       |---Package[tuple]{Unknown} - -7085374960058856883
+|       |---Package[tuple]{Unknown} - -7398260302074824818
 |   Load(/tmp/temp-1456742965/tmp-586682361:org.apache.pig.builtin.BinStorage) 
- -165
 |
-|---MapReduce(-1,AVG) - -163:
+|---MapReduce(1,AVG) - -163:
     |   
Store(/tmp/temp-1456742965/tmp-586682361:org.apache.pig.builtin.BinStorage) - 
-164
     |   |
-    |   |---Local Rearrange[tuple]{Unknown} - -7398260302074824818
+    |   |---Local Rearrange[tuple]{Unknown} - -7973970339130605847
     |       |
-    |       |---For Each[tuple] - -4188863770717253580
+    |       |---New For Each(false)[tuple] - --6860857982727545176
+    |           |   |
+    |           |   POUserFunc(org.apache.pig.builtin.AVG)[tuple] - 
-2082992246427879202
     |           |   |
-    |           |   POGenerate(false)  - -7973970339130605847
-    |           |   |   |
-    |           |   |   POUserFunc(org.apache.pig.builtin.AVG)[tuple] - 
--6860857982727545176
-    |           |   |   |
-    |           |   |   |---Project[tuple](*) - -2082992246427879202
+    |           |   |---Project[tuple][*] - -737965411848544085
     |           |
-    |           |---Package[tuple]{Unknown} - -737965411848544085
+    |           |---Package[tuple]{Unknown} - --3148893660811981376
     |   
Load(/tmp/temp-1456742965/tmp-26634357:org.apache.pig.builtin.BinStorage) - -162
     |
     |---MapReduce(20,FindQuantiles,SUM) - -155:
         |   
Store(/tmp/temp-1456742965/tmp-26634357:org.apache.pig.builtin.BinStorage) - 
-161
         |   |
-        |   |---Local Rearrange[tuple]{Unknown} - --3359714221559579809
+        |   |---Local Rearrange[tuple]{Unknown} - --7926255547935388282
         |       |
-        |       |---For Each[tuple] - --7926255547935388282
+        |       |---New For Each(false,false)[tuple] - -8639002377389679348
+        |           |   |
+        |           |   
POUserFunc(org.apache.pig.impl.builtin.FindQuantiles)[tuple] - 
-727770031531364881
+        |           |   |
+        |           |   |---Project[tuple][*] - -7128285064986147947
+        |           |   |
+        |           |   POUserFunc(org.apache.pig.builtin.SUM)[tuple] - 
--5683415113785058706
         |           |   |
-        |           |   POGenerate(false,false)  - -8639002377389679348
-        |           |   |   |
-        |           |   |   
POUserFunc(org.apache.pig.impl.builtin.FindQuantiles)[tuple] - 
-727770031531364881
-        |           |   |   |
-        |           |   |   |---Project[tuple](*) - -7128285064986147947
-        |           |   |   |
-        |           |   |   POUserFunc(org.apache.pig.builtin.SUM)[tuple] - 
--5683415113785058706
-        |           |   |   |
-        |           |   |   |---Project[tuple](*) - --8002381389674382470
+        |           |   |---Project[tuple][*] - --8002381389674382470
         |           |
         |           |---New For Each(true)[tuple] - -160
         |               |   |
-        |               |   Project[bag](1) - -159
+        |               |   Project[bag][1] - -159
         |               |
         |               |---Package[tuple]{bytearray} - -158
         |   Local Rearrange[tuple]{bytearray} - -157
         |   |   |
-        |   |   Project[bytearray](0) - -156
+        |   |   Project[bytearray][0] - -156
         |   |
         |   
|---Load(/tmp/temp-1456742965/tmp-1456742965:org.apache.pig.builtin.BinStorage) 
- -154
         |
@@ -63,13 +57,13 @@
             |       |   |
             |       |   
POUserFunc(org.apache.pig.impl.builtin.FindQuantiles)[tuple] - -151
             |       |   |
-            |       |   |---Project[tuple](*) - -150
+            |       |   |---Project[tuple][*] - -150
             |       |
             |       |---New For Each(false,false)[tuple] - -149
             |           |   |
             |           |   Constant(20) - -148
             |           |   |
-            |           |   Project[bag](1) - -147
+            |           |   Project[bag][1] - -147
             |           |
             |           |---Package[tuple]{chararray} - -144
             |   Local Rearrange[tuple]{chararray} - -143
@@ -78,7 +72,7 @@
             |   |
             |   |---New For Each(true)[tuple] - -141
             |       |   |
-            |       |   Project[bytearray](0) - -140
+            |       |   Project[bytearray][0] - -140
             |       |
             |       
|---Load(/tmp/temp-1456742965/tmp-1456742965:org.apache.pig.impl.builtin.RandomSampleLoader)
 - -138
             |

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC16.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC16.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC16.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/MRC16.gld
 Mon Jun 30 13:21:40 2008
@@ -1,9 +1,9 @@
 MapReduce(-1) - -180:
-|   Store(DummyFil:DummyLdr) - -6079615556647418436
+|   Store(DummyFil:DummyLdr) - --2783416442434419494
 |   |
 |   |---New For Each(false)[bag] - -183
 |       |   |
-|       |   Project[tuple](0) - -182
+|       |   Project[tuple][0] - -182
 |       |
 |       |---Package[tuple]{tuple} - -181
 |   Load(/tmp/temp-1456742965/tmp2077335416:org.apache.pig.builtin.BinStorage) 
- -179
@@ -13,25 +13,25 @@
     |   |
     |   |---Local Rearrange[tuple]{tuple} - -177
     |       |   |
-    |       |   Project[tuple](*) - -176
+    |       |   Project[tuple][*] - -176
     |       |
-    |       |---Package[tuple]{Unknown} - -8219725798912083822
+    |       |---Package[tuple]{Unknown} - -7714111612268358662
     |   
Load(/tmp/temp-1456742965/tmp-1456742965:org.apache.pig.builtin.BinStorage) - 
-174
     |
     |---MapReduce(-1) - -167:
         |   
Store(/tmp/temp-1456742965/tmp-1456742965:org.apache.pig.builtin.BinStorage) - 
-173
         |   |
-        |   |---Local Rearrange[tuple]{Unknown} - --3889827013424534115
+        |   |---Local Rearrange[tuple]{Unknown} - -5321755951016030071
         |       |
         |       |---New For Each(false)[bag] - -172
         |           |   |
-        |           |   Project[tuple](0) - -171
+        |           |   Project[tuple][0] - -171
         |           |
         |           |---Package[tuple]{tuple} - -170
         |   Local Rearrange[tuple]{tuple} - -169
         |   |   |
-        |   |   Project[tuple](*) - -168
+        |   |   Project[tuple][*] - -168
         |   |
-        |   |---Filter[tuple] - --1613182091613226659
+        |   |---Filter[tuple] - -2197807331204639125
         |       |
-        |       |---Load(DummyFil:DummyLdr) - -5321755951016030071
\ No newline at end of file
+        |       |---Load(DummyFil:DummyLdr) - --8447156979210379761
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Sort.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Sort.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Sort.gld 
(original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Sort.gld 
Mon Jun 30 13:21:40 2008
@@ -1,5 +1,5 @@
 POSort[bag] - Test-Plan-Builder-22
 |   |
-|   Project[bytearray](0) - Test-Plan-Builder-21
+|   Project[bytearray][0] - Test-Plan-Builder-21
 |
 |---Load(a:org.apache.pig.builtin.PigStorage()) - Test-Plan-Builder-20
\ No newline at end of file

Modified: 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Split1.gld
URL: 
http://svn.apache.org/viewvc/incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Split1.gld?rev=672899&r1=672898&r2=672899&view=diff
==============================================================================
--- 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Split1.gld
 (original)
+++ 
incubator/pig/branches/types/test/org/apache/pig/test/data/GoldenFiles/Split1.gld
 Mon Jun 30 13:21:40 2008
@@ -1,8 +1,8 @@
 Filter[tuple] - Test-Plan-Builder-196
 |   |
-|   Less Than[tuple] - Test-Plan-Builder-199
+|   Greater Than[tuple] - Test-Plan-Builder-199
 |   |
-|   |---Project[bytearray](0) - Test-Plan-Builder-197
+|   |---Project[bytearray][0] - Test-Plan-Builder-197
 |   |
 |   |---Constant(7) - Test-Plan-Builder-198
 |
@@ -12,9 +12,9 @@
 
 Filter[tuple] - Test-Plan-Builder-200
 |   |
-|   Greater Than[tuple] - Test-Plan-Builder-203
+|   Less Than[tuple] - Test-Plan-Builder-203
 |   |
-|   |---Project[bytearray](0) - Test-Plan-Builder-201
+|   |---Project[bytearray][0] - Test-Plan-Builder-201
 |   |
 |   |---Constant(7) - Test-Plan-Builder-202
 |


Reply via email to