You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by na...@apache.org on 2010/01/09 01:42:17 UTC

svn commit: r897356 [1/2] - in /hadoop/hive/trunk: ./ ql/src/java/org/apache/hadoop/hive/ql/exec/ ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/ ql/src/java/org/apache/hadoop/hive/ql/plan/ ql/src/test/queries/clientpositive/ ql/src/test/result...

Author: namit
Date: Sat Jan  9 00:42:13 2010
New Revision: 897356

URL: http://svn.apache.org/viewvc?rev=897356&view=rev
Log:
HIVE-1037 SerDe & ObjectInspector for RowContainer mismatch with the
input data (Ning Zhang via namit)


Modified:
    hadoop/hive/trunk/CHANGES.txt
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/RowContainer.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/joinDesc.java
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/join40.q
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join7.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join8.q.xml
    hadoop/hive/trunk/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java

Modified: hadoop/hive/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/CHANGES.txt?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/CHANGES.txt (original)
+++ hadoop/hive/trunk/CHANGES.txt Sat Jan  9 00:42:13 2010
@@ -424,9 +424,12 @@
     HIVE-978 Hive jars should follow Hadoop naming and include version
     (Chad Metcalf and Zheng Shao via namit)
 
-    HIVE-1038 mapjoin dies if the join prunes all the columns 
+    HIVE-1038 mapjoin dies if the join prunes all the columns
     (namit via He Yongqiang)
 
+    HIVE-1037 SerDe & ObjectInspector for RowContainer mismatch with the
+    input data (Ning Zhang via namit)
+
 Release 0.4.0 -  Unreleased
 
   INCOMPATIBLE CHANGES

Modified: hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java (original)
+++ hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java Sat Jan  9 00:42:13 2010
@@ -31,6 +31,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
+import org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
 import org.apache.hadoop.hive.ql.plan.exprNodeDesc;
 import org.apache.hadoop.hive.ql.plan.joinCond;
@@ -45,6 +46,7 @@
 import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.ObjectInspectorCopyOption;
 import org.apache.hadoop.hive.ql.exec.persistence.RowContainer;
+import org.apache.hadoop.mapred.SequenceFileInputFormat;
 import org.apache.hadoop.util.ReflectionUtils;
 
 /**
@@ -112,6 +114,7 @@
   transient private Map<Integer, Set<String>> posToAliasMap;
   
   transient LazyBinarySerDe[] spillTableSerDe;
+  transient protected Map<Byte, tableDesc> spillTableDesc; // spill tables are used if the join input is too large to fit in memory
 
   HashMap<Byte, RowContainer<ArrayList<Object>>> storage; // map b/w table alias to RowContainer
   int joinEmitInterval = -1;
@@ -236,8 +239,8 @@
       // if serde is null, the input doesn't need to be spilled out 
       // e.g., the output columns does not contains the input table
       SerDe serde = getSpillSerDe(pos);
+      RowContainer rc = new RowContainer(joinCacheSize);
       if ( serde != null ) {
-        RowContainer rc = new RowContainer(joinCacheSize);
         
         // arbitrary column names used internally for serializing to spill table
         List<String> colList = new ArrayList<String>();
@@ -251,10 +254,8 @@
                             joinValuesStandardObjectInspectors.get(pos));
         
         rc.setSerDe(serde, rcOI);
-        storage.put(pos, rc);
-      } else {
-        storage.put(pos, new RowContainer(1)); // empty row container just for place holder
       }
+      storage.put(pos, rc);
       pos++;
     }
 
@@ -265,8 +266,8 @@
     
   }
   
-  private SerDe getSpillSerDe(int pos) {
-    tableDesc desc = conf.getSpillTableDesc(pos);
+  private SerDe getSpillSerDe(byte pos) {
+    tableDesc desc = getSpillTableDesc(pos);
     if ( desc == null )
       return null;
     SerDe sd = (SerDe) ReflectionUtils.newInstance(desc.getDeserializerClass(),  null);
@@ -278,7 +279,44 @@
     }
     return sd;
   }
-
+  
+  private void initSpillTables() {
+    Map<Byte, List<exprNodeDesc>> exprs = conf.getExprs();
+    spillTableDesc = new HashMap<Byte, tableDesc>(exprs.size());
+    for (int tag = 0; tag < exprs.size(); tag++) {
+      List<exprNodeDesc> valueCols = exprs.get((byte)tag);
+      int columnSize = valueCols.size();
+      StringBuffer colNames = new StringBuffer();
+      StringBuffer colTypes = new StringBuffer();
+      if ( columnSize <= 0 )
+        continue;
+      for (int k = 0; k < columnSize; k++) {
+        String newColName = tag + "_VALUE_" + k; // any name, it does not matter.
+        colNames.append(newColName);
+  	    colNames.append(',');
+   	    colTypes.append(valueCols.get(k).getTypeString());
+   	    colTypes.append(',');
+      }
+      // remove the last ','
+      colNames.setLength(colNames.length()-1);
+      colTypes.setLength(colTypes.length()-1);
+      tableDesc tblDesc = 
+        new tableDesc(LazyBinarySerDe.class,
+         SequenceFileInputFormat.class,
+         HiveSequenceFileOutputFormat.class, 
+         Utilities.makeProperties(org.apache.hadoop.hive.serde.Constants.SERIALIZATION_FORMAT, "" + Utilities.ctrlaCode,
+               org.apache.hadoop.hive.serde.Constants.LIST_COLUMNS, colNames.toString(),
+               org.apache.hadoop.hive.serde.Constants.LIST_COLUMN_TYPES, colTypes.toString()));
+      spillTableDesc.put((byte)tag, tblDesc);
+    }
+  }
+  
+  public tableDesc getSpillTableDesc(Byte alias) {
+    if(spillTableDesc == null || spillTableDesc.size() == 0)
+      initSpillTables();
+    return spillTableDesc.get(alias);
+  }
+  
   public void startGroup() throws HiveException {
     LOG.trace("Join: Starting new group");
     for (RowContainer<ArrayList<Object>> alw: storage.values()) {

Modified: hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/RowContainer.java
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/RowContainer.java?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/RowContainer.java (original)
+++ hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/RowContainer.java Sat Jan  9 00:42:13 2010
@@ -22,8 +22,8 @@
 import java.io.RandomAccessFile;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.ArrayList;
@@ -88,6 +88,7 @@
   private int pBlock;        // pointer to the iterator block
   private SerDe serde;       // serialization/deserialization for the row
   private ObjectInspector standardOI;  // object inspector for the row
+  private ArrayList dummyRow; // representing empty row (no columns since value art is null)
   
   public RowContainer() {
     this(BLOCKSIZE);
@@ -107,6 +108,7 @@
     this.off_len   = new long[BLKMETA_LEN * 2];
     this.serde     = null;
     this.standardOI= null;
+    this.dummyRow  = new ArrayList(0);
   }
   
   public RowContainer(int blockSize, SerDe sd, ObjectInspector oi) {
@@ -182,7 +184,7 @@
         rFile = new RandomAccessFile(tmpFile, "rw");
       }
       byte[] buf = serialize(block);
-      long offset = rFile.getFilePointer();
+      long offset = rFile.length();
       long len = buf.length;
       // append the block at the end
       rFile.seek(offset);
@@ -221,18 +223,22 @@
     assert(serde != null && standardOI != null);
     
     ByteArrayOutputStream  baos;
-    ObjectOutputStream     oos;
+    DataOutputStream     oos;
     
     try {
       baos = new ByteArrayOutputStream();
-      oos = new ObjectOutputStream(baos);
+      oos = new DataOutputStream(baos);
       
       // # of rows
       oos.writeInt(obj.length); 
       
-      for ( int i = 0; i < obj.length; ++i ) {
-        Writable outVal = serde.serialize(obj[i], standardOI);
-        outVal.write(oos);
+      // if serde or OI is null, meaning the join value is null, we don't need
+      // to serialize anything to disk, just need to keep the length.
+      if ( serde != null && standardOI != null ) {
+        for ( int i = 0; i < obj.length; ++i ) {
+          Writable outVal = serde.serialize(obj[i], standardOI);
+          outVal.write(oos);
+        }
       }
       oos.close();
     } catch (Exception e) {
@@ -249,24 +255,30 @@
    */
   private Row[] deserialize(byte[] buf) throws HiveException {
     ByteArrayInputStream  bais;
-    ObjectInputStream     ois;
+    DataInputStream     ois;
     
     try {
       bais = new ByteArrayInputStream(buf);
-      ois = new ObjectInputStream(bais);
+      ois = new DataInputStream(bais);
       int sz = ois.readInt();
       assert sz == blockSize: 
              "deserialized size " + sz + " is not the same as block size " + blockSize;
       Row[] ret = (Row[]) new ArrayList[sz];
+      
+      // if serde or OI is null, meaning the join value is null, we don't need
+      // to serialize anything to disk, just need to keep the length.
       for ( int i = 0; i < sz; ++i ) {
+        if ( serde != null && standardOI != null ) {
+          Writable val = serde.getSerializedClass().newInstance();
+          val.readFields(ois);
         
-        Writable val = serde.getSerializedClass().newInstance();
-        val.readFields(ois);
-        
-        ret[i] = (Row) ObjectInspectorUtils.copyToStandardObject(
-                         serde.deserialize(val),
-                         serde.getObjectInspector(),
-                         ObjectInspectorCopyOption.WRITABLE);
+          ret[i] = (Row) ObjectInspectorUtils.copyToStandardObject(
+                           serde.deserialize(val),
+                           serde.getObjectInspector(),
+                           ObjectInspectorCopyOption.WRITABLE);
+        } else {
+          ret[i] = (Row) dummyRow;
+        }
       }
       return ret;
     } catch (Exception e) {
@@ -290,7 +302,8 @@
     itrCursor = 0;
     addCursor = 0;
     numBlocks = 0;
-    size = 0;
+    pBlock    = 0;
+    size      = 0;
     try {
       if ( rFile != null )
         rFile.close();

Modified: hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/joinDesc.java
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/joinDesc.java?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/joinDesc.java (original)
+++ hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/joinDesc.java Sat Jan  9 00:42:13 2010
@@ -62,8 +62,6 @@
   
   protected Byte[] tagOrder;
   
-  protected tableDesc[] spillTableDesc; // spill tables are used if the join input is too large to fit in memory
-  
   public joinDesc() { }
   
   public joinDesc(final Map<Byte, List<exprNodeDesc>> exprs, ArrayList<String> outputColumnNames, final boolean noOuterJoin, final joinCond[] conds) {
@@ -77,7 +75,6 @@
     {
       tagOrder[i] = (byte)i;
     }
-    initSpillTables();
   }
   
   public joinDesc(final Map<Byte, List<exprNodeDesc>> exprs, ArrayList<String> outputColumnNames) {
@@ -190,49 +187,4 @@
   public void setTagOrder(Byte[] tagOrder) {
     this.tagOrder = tagOrder;
   }
-  
-  public void initSpillTables() {
-    spillTableDesc = new tableDesc[exprs.size()];
-    for (int tag = 0; tag < exprs.size(); tag++) {
-      List<exprNodeDesc> valueCols = exprs.get((byte)tag);
-      int columnSize = valueCols.size();
-      StringBuffer colNames = new StringBuffer();
-      StringBuffer colTypes = new StringBuffer();
-      List<exprNodeDesc> newValueExpr = new ArrayList<exprNodeDesc>();
-      if ( columnSize <= 0 ) {
-        spillTableDesc[tag] = null;
-        continue;
-      }
-      for (int k = 0; k < columnSize; k++) {
-        TypeInfo type = valueCols.get(k).getTypeInfo();
-	      String newColName = tag + "_VALUE_" + k; // any name, it does not matter.
-  	    colNames.append(newColName);
-  	    colNames.append(',');
-   	    colTypes.append(valueCols.get(k).getTypeString());
-   	    colTypes.append(',');
-      }
-      // remove the last ','
-      colNames.setLength(colNames.length()-1);
-      colTypes.setLength(colTypes.length()-1);
-      spillTableDesc[tag] = 
-         new tableDesc(LazyBinarySerDe.class,
-          SequenceFileInputFormat.class,
-          HiveSequenceFileOutputFormat.class, 
-          Utilities.makeProperties(org.apache.hadoop.hive.serde.Constants.SERIALIZATION_FORMAT, "" + Utilities.ctrlaCode,
-                org.apache.hadoop.hive.serde.Constants.LIST_COLUMNS, colNames.toString(),
-                org.apache.hadoop.hive.serde.Constants.LIST_COLUMN_TYPES, colTypes.toString()));
-    }
-  }
-  
-  public tableDesc getSpillTableDesc(int i) {
-    return spillTableDesc[i];
-  }
-  
-  public tableDesc[] getSpillTableDesc() {
-    return spillTableDesc;
-  }
-  
-  public void setSpillTableDesc(tableDesc[] std) {
-    spillTableDesc = std;
-  }
 }

Modified: hadoop/hive/trunk/ql/src/test/queries/clientpositive/join40.q
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/queries/clientpositive/join40.q?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/queries/clientpositive/join40.q (original)
+++ hadoop/hive/trunk/ql/src/test/queries/clientpositive/join40.q Sat Jan  9 00:42:13 2010
@@ -38,3 +38,7 @@
 SELECT /*+ MAPJOIN(y) */ x.key, x.value, y.key, y.value
 FROM src x left outer JOIN (select * from src where key <= 100) y ON (x.key = y.key);
 
+EXPLAIN
+SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY);
+
+SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY);

Modified: hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out (original)
+++ hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out Sat Jan  9 00:42:13 2010
@@ -99,12 +99,12 @@
 FROM src x left outer JOIN (select * from src where key <= 100) y ON (x.key = y.key)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/655426101/10000
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1575961079/10000
 POSTHOOK: query: SELECT x.key, x.value, y.key, y.value
 FROM src x left outer JOIN (select * from src where key <= 100) y ON (x.key = y.key)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/655426101/10000
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1575961079/10000
 0	val_0	0	val_0
 0	val_0	0	val_0
 0	val_0	0	val_0
@@ -749,12 +749,12 @@
 FROM src src1 JOIN src src2 ON (src1.key = src2.key)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/423795716/10000
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1535877066/10000
 POSTHOOK: query: select src1.key, src2.value 
 FROM src src1 JOIN src src2 ON (src1.key = src2.key)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/423795716/10000
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1535877066/10000
 0	val_0
 0	val_0
 0	val_0
@@ -1905,7 +1905,7 @@
   Stage: Stage-2
     Map Reduce
       Alias -> Map Operator Tree:
-        file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/940947061/10002 
+        file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/448458798/10002 
             Reduce Output Operator
               key expressions:
                     expr: _col0
@@ -1953,12 +1953,12 @@
 SORT BY src1.key, src1.value, src2.key, src2.value, src3.key, src3.value
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/147679359/10000
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1868126511/10000
 POSTHOOK: query: SELECT * FROM src src1 JOIN src src2 ON (src1.key = src2.key AND src1.key < 10) RIGHT OUTER JOIN src src3 ON (src1.key = src3.key AND src3.key < 20)
 SORT BY src1.key, src1.value, src2.key, src2.value, src3.key, src3.value
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/147679359/10000
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1868126511/10000
 NULL	NULL	NULL	NULL	10	val_10
 NULL	NULL	NULL	NULL	11	val_11
 NULL	NULL	NULL	NULL	12	val_12
@@ -2157,7 +2157,7 @@
   Stage: Stage-2
     Map Reduce
       Alias -> Map Operator Tree:
-        file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1105492309/10002 
+        file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/825173402/10002 
             Reduce Output Operator
               key expressions:
                     expr: _col0
@@ -2205,12 +2205,12 @@
 SORT BY src1.key, src1.value, src2.key, src2.value, src3.key, src3.value
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/2022916403/10000
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638684247/10000
 POSTHOOK: query: SELECT * FROM src src1 JOIN src src2 ON (src1.key = src2.key AND src1.key < 10 AND src2.key < 15) RIGHT OUTER JOIN src src3 ON (src1.key = src3.key AND src3.key < 20)
 SORT BY src1.key, src1.value, src2.key, src2.value, src3.key, src3.value
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/2022916403/10000
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638684247/10000
 NULL	NULL	NULL	NULL	10	val_10
 NULL	NULL	NULL	NULL	11	val_11
 NULL	NULL	NULL	NULL	12	val_12
@@ -2414,12 +2414,12 @@
 FROM src x left outer JOIN (select * from src where key <= 100) y ON (x.key = y.key)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1235512843/10000
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/902015943/10000
 POSTHOOK: query: SELECT /*+ MAPJOIN(y) */ x.key, x.value, y.key, y.value
 FROM src x left outer JOIN (select * from src where key <= 100) y ON (x.key = y.key)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1235512843/10000
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/902015943/10000
 238	val_238	NULL	NULL
 86	val_86	86	val_86
 311	val_311	NULL	NULL
@@ -2986,3 +2986,109 @@
 200	val_200	NULL	NULL
 97	val_97	97	val_97
 97	val_97	97	val_97
+PREHOOK: query: EXPLAIN
+SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY)
+PREHOOK: type: QUERY
+POSTHOOK: query: EXPLAIN
+SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY)
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+  (TOK_QUERY (TOK_FROM (TOK_JOIN (TOK_TABREF SRC A) (TOK_TABREF SRC B) (= (. (TOK_TABLE_OR_COL A) KEY) (. (TOK_TABLE_OR_COL B) KEY)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION COUNT 1)))))
+
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-2 depends on stages: Stage-1
+  Stage-0 is a root stage
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Alias -> Map Operator Tree:
+        b 
+          TableScan
+            alias: b
+            Reduce Output Operator
+              key expressions:
+                    expr: key
+                    type: string
+              sort order: +
+              Map-reduce partition columns:
+                    expr: key
+                    type: string
+              tag: 1
+        a 
+          TableScan
+            alias: a
+            Reduce Output Operator
+              key expressions:
+                    expr: key
+                    type: string
+              sort order: +
+              Map-reduce partition columns:
+                    expr: key
+                    type: string
+              tag: 0
+      Reduce Operator Tree:
+        Join Operator
+          condition map:
+               Inner Join 0 to 1
+          condition expressions:
+            0 
+            1 
+          Select Operator
+            Group By Operator
+              aggregations:
+                    expr: count(1)
+              bucketGroup: false
+              mode: hash
+              outputColumnNames: _col0
+              File Output Operator
+                compressed: false
+                GlobalTableId: 0
+                table:
+                    input format: org.apache.hadoop.mapred.SequenceFileInputFormat
+                    output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+
+  Stage: Stage-2
+    Map Reduce
+      Alias -> Map Operator Tree:
+        file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1616259380/10002 
+            Reduce Output Operator
+              sort order: 
+              tag: -1
+              value expressions:
+                    expr: _col0
+                    type: bigint
+      Reduce Operator Tree:
+        Group By Operator
+          aggregations:
+                expr: count(VALUE._col0)
+          bucketGroup: false
+          mode: mergepartial
+          outputColumnNames: _col0
+          Select Operator
+            expressions:
+                  expr: _col0
+                  type: bigint
+            outputColumnNames: _col0
+            File Output Operator
+              compressed: false
+              GlobalTableId: 0
+              table:
+                  input format: org.apache.hadoop.mapred.TextInputFormat
+                  output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+
+
+PREHOOK: query: SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY)
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/623243330/10000
+POSTHOOK: query: SELECT COUNT(1) FROM SRC A JOIN SRC B ON (A.KEY=B.KEY)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/623243330/10000
+1028

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object id="MapRedTask0" class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="childTasks"> 
    <object class="java.util.ArrayList"> 
@@ -30,7 +30,7 @@
                <boolean>true</boolean> 
               </void> 
               <void property="sourceDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/35260603/10000</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1656721276/10000</string> 
               </void> 
               <void property="table"> 
                <object id="tableDesc0" class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -87,7 +87,7 @@
                   </void> 
                   <void method="put"> 
                    <string>transient_lastDdlTime</string> 
-                   <string>1262739145</string> 
+                   <string>1262980199</string> 
                   </void> 
                  </object> 
                 </void> 
@@ -97,7 +97,7 @@
                </object> 
               </void> 
               <void property="tmpDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/35260603/10001</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1656721276/10001</string> 
               </void> 
              </object> 
             </void> 
@@ -125,10 +125,10 @@
                <boolean>true</boolean> 
               </void> 
               <void property="sourceDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
               </void> 
               <void property="targetDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/35260603/10000</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1656721276/10000</string> 
               </void> 
              </object> 
             </void> 
@@ -146,7 +146,7 @@
             <void property="aliasToWork"> 
              <object class="java.util.LinkedHashMap"> 
               <void method="put"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
                <object id="TableScanOperator0" class="org.apache.hadoop.hive.ql.exec.TableScanOperator"> 
                 <void property="childOperators"> 
                  <object class="java.util.ArrayList"> 
@@ -391,10 +391,10 @@
             <void property="pathToAliases"> 
              <object class="java.util.LinkedHashMap"> 
               <void method="put"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
                <object class="java.util.ArrayList"> 
                 <void method="add"> 
-                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
                 </void> 
                </object> 
               </void> 
@@ -403,7 +403,7 @@
             <void property="pathToPartitionInfo"> 
              <object class="java.util.LinkedHashMap"> 
               <void method="put"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
                <object class="org.apache.hadoop.hive.ql.plan.partitionDesc"> 
                 <void property="deserializerClass"> 
                  <class>org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe</class> 
@@ -436,7 +436,7 @@
                   <void property="conf"> 
                    <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                     <void property="dirName"> 
-                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/35260603/10000</string> 
+                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1656721276/10000</string> 
                     </void> 
                     <void property="tableInfo"> 
                      <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -493,7 +493,7 @@
                         </void> 
                         <void method="put"> 
                          <string>transient_lastDdlTime</string> 
-                         <string>1262739145</string> 
+                         <string>1262980199</string> 
                         </void> 
                        </object> 
                       </void> 
@@ -633,7 +633,7 @@
       <void property="resolverCtx"> 
        <object class="org.apache.hadoop.hive.ql.plan.ConditionalResolverMergeFiles$ConditionalResolverMergeFilesCtx"> 
         <void property="dir"> 
-         <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+         <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
         </void> 
         <void property="listTasks"> 
          <object idref="ArrayList0"/> 
@@ -727,7 +727,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739144</string> 
+          <string>1262980199</string> 
          </void> 
         </object> 
        </void> 
@@ -783,7 +783,7 @@
                            <int>1</int> 
                           </void> 
                           <void property="dirName"> 
-                           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1354175981/10002</string> 
+                           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1638209096/10002</string> 
                           </void> 
                           <void property="tableInfo"> 
                            <object idref="tableDesc0"/> 
@@ -843,7 +843,34 @@
                               <void property="typeInfo"> 
                                <object id="ListTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.ListTypeInfo"> 
                                 <void property="listElementTypeInfo"> 
-                                 <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"/> 
+                                 <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"> 
+                                  <void property="allStructFieldNames"> 
+                                   <object class="java.util.ArrayList"> 
+                                    <void method="add"> 
+                                     <string>myint</string> 
+                                    </void> 
+                                    <void method="add"> 
+                                     <string>mystring</string> 
+                                    </void> 
+                                    <void method="add"> 
+                                     <string>underscore_int</string> 
+                                    </void> 
+                                   </object> 
+                                  </void> 
+                                  <void property="allStructFieldTypeInfos"> 
+                                   <object class="java.util.ArrayList"> 
+                                    <void method="add"> 
+                                     <object idref="PrimitiveTypeInfo1"/> 
+                                    </void> 
+                                    <void method="add"> 
+                                     <object idref="PrimitiveTypeInfo0"/> 
+                                    </void> 
+                                    <void method="add"> 
+                                     <object idref="PrimitiveTypeInfo1"/> 
+                                    </void> 
+                                   </object> 
+                                  </void> 
+                                 </object> 
                                 </void> 
                                </object> 
                               </void> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -66,7 +66,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739158</string> 
+          <string>1262980213</string> 
          </void> 
         </object> 
        </void> 
@@ -235,7 +235,32 @@
                            <string></string> 
                           </void> 
                           <void property="typeInfo"> 
-                           <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"/> 
+                           <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"> 
+                            <void property="allStructFieldNames"> 
+                             <object class="java.util.ArrayList"> 
+                              <void method="add"> 
+                               <string>count</string> 
+                              </void> 
+                              <void method="add"> 
+                               <string>sum</string> 
+                              </void> 
+                             </object> 
+                            </void> 
+                            <void property="allStructFieldTypeInfos"> 
+                             <object class="java.util.ArrayList"> 
+                              <void method="add"> 
+                               <object class="org.apache.hadoop.hive.serde2.typeinfo.PrimitiveTypeInfo"> 
+                                <void property="typeName"> 
+                                 <string>bigint</string> 
+                                </void> 
+                               </object> 
+                              </void> 
+                              <void method="add"> 
+                               <object idref="PrimitiveTypeInfo1"/> 
+                              </void> 
+                             </object> 
+                            </void> 
+                           </object> 
                           </void> 
                          </object> 
                         </void> 
@@ -1134,7 +1159,7 @@
               <void property="conf"> 
                <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                 <void property="dirName"> 
-                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/2120442501/10001</string> 
+                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/76672392/10001</string> 
                 </void> 
                 <void property="tableInfo"> 
                  <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object id="MapRedTask0" class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="childTasks"> 
    <object class="java.util.ArrayList"> 
@@ -26,7 +26,7 @@
            <boolean>true</boolean> 
           </void> 
           <void property="sourceDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/820045419/10000</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/150374599/10000</string> 
           </void> 
           <void property="table"> 
            <object id="tableDesc0" class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -83,7 +83,7 @@
               </void> 
               <void method="put"> 
                <string>transient_lastDdlTime</string> 
-               <string>1262739187</string> 
+               <string>1262980242</string> 
               </void> 
              </object> 
             </void> 
@@ -93,7 +93,7 @@
            </object> 
           </void> 
           <void property="tmpDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/820045419/10001</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/150374599/10001</string> 
           </void> 
          </object> 
         </void> 
@@ -172,7 +172,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739186</string> 
+          <string>1262980241</string> 
          </void> 
         </object> 
        </void> 
@@ -569,7 +569,38 @@
                 <void property="typeInfo"> 
                  <object id="ListTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.ListTypeInfo"> 
                   <void property="listElementTypeInfo"> 
-                   <object class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"/> 
+                   <object class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"> 
+                    <void property="allStructFieldNames"> 
+                     <object class="java.util.ArrayList"> 
+                      <void method="add"> 
+                       <string>myint</string> 
+                      </void> 
+                      <void method="add"> 
+                       <string>mystring</string> 
+                      </void> 
+                      <void method="add"> 
+                       <string>underscore_int</string> 
+                      </void> 
+                     </object> 
+                    </void> 
+                    <void property="allStructFieldTypeInfos"> 
+                     <object class="java.util.ArrayList"> 
+                      <void method="add"> 
+                       <object id="PrimitiveTypeInfo1" class="org.apache.hadoop.hive.serde2.typeinfo.PrimitiveTypeInfo"> 
+                        <void property="typeName"> 
+                         <string>int</string> 
+                        </void> 
+                       </object> 
+                      </void> 
+                      <void method="add"> 
+                       <object idref="PrimitiveTypeInfo0"/> 
+                      </void> 
+                      <void method="add"> 
+                       <object idref="PrimitiveTypeInfo1"/> 
+                      </void> 
+                     </object> 
+                    </void> 
+                   </object> 
                   </void> 
                  </object> 
                 </void> 
@@ -587,11 +618,7 @@
                 <void property="typeInfo"> 
                  <object id="ListTypeInfo1" class="org.apache.hadoop.hive.serde2.typeinfo.ListTypeInfo"> 
                   <void property="listElementTypeInfo"> 
-                   <object id="PrimitiveTypeInfo1" class="org.apache.hadoop.hive.serde2.typeinfo.PrimitiveTypeInfo"> 
-                    <void property="typeName"> 
-                     <string>int</string> 
-                    </void> 
-                   </object> 
+                   <object idref="PrimitiveTypeInfo1"/> 
                   </void> 
                  </object> 
                 </void> 
@@ -880,7 +907,7 @@
                  <int>1</int> 
                 </void> 
                 <void property="dirName"> 
-                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/820045419/10000</string> 
+                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/150374599/10000</string> 
                 </void> 
                 <void property="tableInfo"> 
                  <object idref="tableDesc0"/> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -70,7 +70,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739208</string> 
+          <string>1262980260</string> 
          </void> 
         </object> 
        </void> 
@@ -115,7 +115,7 @@
                 <void property="conf"> 
                  <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                   <void property="dirName"> 
-                   <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/2063408437/10001</string> 
+                   <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/607622382/10001</string> 
                   </void> 
                   <void property="tableInfo"> 
                    <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -289,7 +289,34 @@
                       <void property="typeInfo"> 
                        <object id="ListTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.ListTypeInfo"> 
                         <void property="listElementTypeInfo"> 
-                         <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"/> 
+                         <object id="StructTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"> 
+                          <void property="allStructFieldNames"> 
+                           <object class="java.util.ArrayList"> 
+                            <void method="add"> 
+                             <string>myint</string> 
+                            </void> 
+                            <void method="add"> 
+                             <string>mystring</string> 
+                            </void> 
+                            <void method="add"> 
+                             <string>underscore_int</string> 
+                            </void> 
+                           </object> 
+                          </void> 
+                          <void property="allStructFieldTypeInfos"> 
+                           <object class="java.util.ArrayList"> 
+                            <void method="add"> 
+                             <object idref="PrimitiveTypeInfo0"/> 
+                            </void> 
+                            <void method="add"> 
+                             <object idref="PrimitiveTypeInfo1"/> 
+                            </void> 
+                            <void method="add"> 
+                             <object idref="PrimitiveTypeInfo0"/> 
+                            </void> 
+                           </object> 
+                          </void> 
+                         </object> 
                         </void> 
                        </object> 
                       </void> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -70,7 +70,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739210</string> 
+          <string>1262980263</string> 
          </void> 
         </object> 
        </void> 
@@ -123,7 +123,7 @@
                         <void property="conf"> 
                          <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                           <void property="dirName"> 
-                           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/999740985/10001</string> 
+                           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1553528333/10001</string> 
                           </void> 
                           <void property="tableInfo"> 
                            <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -285,7 +285,34 @@
                             <void property="typeInfo"> 
                              <object id="ListTypeInfo0" class="org.apache.hadoop.hive.serde2.typeinfo.ListTypeInfo"> 
                               <void property="listElementTypeInfo"> 
-                               <object class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"/> 
+                               <object class="org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo"> 
+                                <void property="allStructFieldNames"> 
+                                 <object class="java.util.ArrayList"> 
+                                  <void method="add"> 
+                                   <string>myint</string> 
+                                  </void> 
+                                  <void method="add"> 
+                                   <string>mystring</string> 
+                                  </void> 
+                                  <void method="add"> 
+                                   <string>underscore_int</string> 
+                                  </void> 
+                                 </object> 
+                                </void> 
+                                <void property="allStructFieldTypeInfos"> 
+                                 <object class="java.util.ArrayList"> 
+                                  <void method="add"> 
+                                   <object idref="PrimitiveTypeInfo0"/> 
+                                  </void> 
+                                  <void method="add"> 
+                                   <object idref="PrimitiveTypeInfo1"/> 
+                                  </void> 
+                                  <void method="add"> 
+                                   <object idref="PrimitiveTypeInfo0"/> 
+                                  </void> 
+                                 </object> 
+                                </void> 
+                               </object> 
                               </void> 
                              </object> 
                             </void> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object id="MapRedTask0" class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="childTasks"> 
    <object class="java.util.ArrayList"> 
@@ -26,7 +26,7 @@
            <boolean>true</boolean> 
           </void> 
           <void property="sourceDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1940376665/10000</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1150357489/10000</string> 
           </void> 
           <void property="table"> 
            <object id="tableDesc0" class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -83,7 +83,7 @@
               </void> 
               <void method="put"> 
                <string>transient_lastDdlTime</string> 
-               <string>1262739214</string> 
+               <string>1262980266</string> 
               </void> 
              </object> 
             </void> 
@@ -93,7 +93,7 @@
            </object> 
           </void> 
           <void property="tmpDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1940376665/10001</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1150357489/10001</string> 
           </void> 
          </object> 
         </void> 
@@ -168,7 +168,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739213</string> 
+          <string>1262980266</string> 
          </void> 
         </object> 
        </void> 
@@ -823,7 +823,7 @@
                  <int>1</int> 
                 </void> 
                 <void property="dirName"> 
-                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1940376665/10000</string> 
+                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1150357489/10000</string> 
                 </void> 
                 <void property="tableInfo"> 
                  <object idref="tableDesc0"/> 
@@ -1097,68 +1097,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="2"> 
           <void index="0"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object id="MapRedTask0" class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="childTasks"> 
    <object class="java.util.ArrayList"> 
@@ -30,7 +30,7 @@
                <boolean>true</boolean> 
               </void> 
               <void property="sourceDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1369275629/10000</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/246140773/10000</string> 
               </void> 
               <void property="table"> 
                <object id="tableDesc0" class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -87,7 +87,7 @@
                   </void> 
                   <void method="put"> 
                    <string>transient_lastDdlTime</string> 
-                   <string>1262739216</string> 
+                   <string>1262980269</string> 
                   </void> 
                  </object> 
                 </void> 
@@ -97,7 +97,7 @@
                </object> 
               </void> 
               <void property="tmpDir"> 
-               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1369275629/10001</string> 
+               <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/246140773/10001</string> 
               </void> 
              </object> 
             </void> 
@@ -179,7 +179,7 @@
              </void> 
              <void method="put"> 
               <string>transient_lastDdlTime</string> 
-              <string>1262739216</string> 
+              <string>1262980268</string> 
              </void> 
             </object> 
            </void> 
@@ -766,7 +766,7 @@
         <void property="pathToAliases"> 
          <object class="java.util.LinkedHashMap"> 
           <void method="put"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/569065061/10002</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/280770505/10002</string> 
            <object class="java.util.ArrayList"> 
             <void method="add"> 
              <string>$INTNAME</string> 
@@ -786,7 +786,7 @@
         <void property="pathToPartitionInfo"> 
          <object class="java.util.LinkedHashMap"> 
           <void method="put"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/569065061/10002</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/280770505/10002</string> 
            <object class="org.apache.hadoop.hive.ql.plan.partitionDesc"> 
             <void property="deserializerClass"> 
              <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
@@ -891,7 +891,7 @@
                      <int>1</int> 
                     </void> 
                     <void property="dirName"> 
-                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1369275629/10000</string> 
+                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/246140773/10000</string> 
                     </void> 
                     <void property="tableInfo"> 
                      <object idref="tableDesc0"/> 
@@ -1173,68 +1173,6 @@
               </void> 
              </object> 
             </void> 
-            <void property="spillTableDesc"> 
-             <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-              <void index="0"> 
-               <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-                <void property="deserializerClass"> 
-                 <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-                </void> 
-                <void property="inputFileFormatClass"> 
-                 <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-                </void> 
-                <void property="outputFileFormatClass"> 
-                 <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-                </void> 
-                <void property="properties"> 
-                 <object class="java.util.Properties"> 
-                  <void method="put"> 
-                   <string>columns</string> 
-                   <string>0_VALUE_0,0_VALUE_1,0_VALUE_2,0_VALUE_3</string> 
-                  </void> 
-                  <void method="put"> 
-                   <string>serialization.format</string> 
-                   <string>1</string> 
-                  </void> 
-                  <void method="put"> 
-                   <string>columns.types</string> 
-                   <string>string,string,string,string</string> 
-                  </void> 
-                 </object> 
-                </void> 
-               </object> 
-              </void> 
-              <void index="1"> 
-               <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-                <void property="deserializerClass"> 
-                 <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-                </void> 
-                <void property="inputFileFormatClass"> 
-                 <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-                </void> 
-                <void property="outputFileFormatClass"> 
-                 <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-                </void> 
-                <void property="properties"> 
-                 <object class="java.util.Properties"> 
-                  <void method="put"> 
-                   <string>columns</string> 
-                   <string>1_VALUE_0,1_VALUE_1</string> 
-                  </void> 
-                  <void method="put"> 
-                   <string>serialization.format</string> 
-                   <string>1</string> 
-                  </void> 
-                  <void method="put"> 
-                   <string>columns.types</string> 
-                   <string>string,string</string> 
-                  </void> 
-                 </object> 
-                </void> 
-               </object> 
-              </void> 
-             </array> 
-            </void> 
             <void property="tagOrder"> 
              <array class="java.lang.Byte" length="2"> 
               <void index="0"> 
@@ -2006,7 +1944,7 @@
           <void property="conf"> 
            <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
             <void property="dirName"> 
-             <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/569065061/10002</string> 
+             <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/280770505/10002</string> 
             </void> 
             <void property="tableInfo"> 
              <object idref="tableDesc4"/> 
@@ -2141,68 +2079,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="2"> 
           <void index="0"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object id="MapRedTask0" class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="childTasks"> 
    <object class="java.util.ArrayList"> 
@@ -26,7 +26,7 @@
            <boolean>true</boolean> 
           </void> 
           <void property="sourceDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/62277540/10000</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1766421256/10000</string> 
           </void> 
           <void property="table"> 
            <object id="tableDesc0" class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -83,7 +83,7 @@
               </void> 
               <void method="put"> 
                <string>transient_lastDdlTime</string> 
-               <string>1262739219</string> 
+               <string>1262980272</string> 
               </void> 
              </object> 
             </void> 
@@ -93,7 +93,7 @@
            </object> 
           </void> 
           <void property="tmpDir"> 
-           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/62277540/10001</string> 
+           <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1766421256/10001</string> 
           </void> 
          </object> 
         </void> 
@@ -168,7 +168,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739219</string> 
+          <string>1262980271</string> 
          </void> 
         </object> 
        </void> 
@@ -1079,7 +1079,7 @@
                  <int>1</int> 
                 </void> 
                 <void property="dirName"> 
-                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/62277540/10000</string> 
+                 <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1766421256/10000</string> 
                 </void> 
                 <void property="tableInfo"> 
                  <object idref="tableDesc0"/> 
@@ -1372,97 +1372,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="3"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="2"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>2_VALUE_0,2_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="3"> 
           <void index="0"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -66,7 +66,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739221</string> 
+          <string>1262980274</string> 
          </void> 
         </object> 
        </void> 
@@ -1663,7 +1663,7 @@
                   <void property="conf"> 
                    <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                     <void property="dirName"> 
-                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1491820269/10001</string> 
+                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/245054097/10001</string> 
                     </void> 
                     <void property="tableInfo"> 
                      <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -2260,68 +2260,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="2"> 
           <void index="0"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -66,7 +66,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739224</string> 
+          <string>1262980277</string> 
          </void> 
         </object> 
        </void> 
@@ -1663,7 +1663,7 @@
                   <void property="conf"> 
                    <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                     <void property="dirName"> 
-                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1915272072/10001</string> 
+                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1499257546/10001</string> 
                     </void> 
                     <void property="tableInfo"> 
                      <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -2260,68 +2260,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="2"> 
           <void index="0"> 

Modified: hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml?rev=897356&r1=897355&r2=897356&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml (original)
+++ hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml Sat Jan  9 00:42:13 2010
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?> 
-<java version="1.6.0_16" class="java.beans.XMLDecoder"> 
+<java version="1.6.0_07" class="java.beans.XMLDecoder"> 
  <object class="org.apache.hadoop.hive.ql.exec.MapRedTask"> 
   <void property="id"> 
    <string>Stage-2</string> 
@@ -66,7 +66,7 @@
          </void> 
          <void method="put"> 
           <string>transient_lastDdlTime</string> 
-          <string>1262739227</string> 
+          <string>1262980280</string> 
          </void> 
         </object> 
        </void> 
@@ -1663,7 +1663,7 @@
                   <void property="conf"> 
                    <object class="org.apache.hadoop.hive.ql.plan.fileSinkDesc"> 
                     <void property="dirName"> 
-                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1079780824/10001</string> 
+                     <string>file:/data/users/nzhang/work/876/apache-hive/build/ql/tmp/1054464777/10001</string> 
                     </void> 
                     <void property="tableInfo"> 
                      <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
@@ -2260,68 +2260,6 @@
           </void> 
          </object> 
         </void> 
-        <void property="spillTableDesc"> 
-         <array class="org.apache.hadoop.hive.ql.plan.tableDesc" length="2"> 
-          <void index="0"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>0_VALUE_0,0_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-          <void index="1"> 
-           <object class="org.apache.hadoop.hive.ql.plan.tableDesc"> 
-            <void property="deserializerClass"> 
-             <class>org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe</class> 
-            </void> 
-            <void property="inputFileFormatClass"> 
-             <class>org.apache.hadoop.mapred.SequenceFileInputFormat</class> 
-            </void> 
-            <void property="outputFileFormatClass"> 
-             <class>org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat</class> 
-            </void> 
-            <void property="properties"> 
-             <object class="java.util.Properties"> 
-              <void method="put"> 
-               <string>columns</string> 
-               <string>1_VALUE_0,1_VALUE_1</string> 
-              </void> 
-              <void method="put"> 
-               <string>serialization.format</string> 
-               <string>1</string> 
-              </void> 
-              <void method="put"> 
-               <string>columns.types</string> 
-               <string>string,string</string> 
-              </void> 
-             </object> 
-            </void> 
-           </object> 
-          </void> 
-         </array> 
-        </void> 
         <void property="tagOrder"> 
          <array class="java.lang.Byte" length="2"> 
           <void index="0">