hive-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From the...@apache.org
Subject svn commit: r1524198 [2/5] - in /hive/branches/branch-0.12: common/src/java/org/apache/hadoop/hive/common/type/ common/src/test/org/apache/hadoop/hive/common/type/ data/files/ ql/src/java/org/apache/hadoop/hive/ql/exec/ ql/src/java/org/apache/hadoop/hi...
Date Tue, 17 Sep 2013 20:02:23 GMT
Modified: hive/branches/branch-0.12/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFunctionRegistry.java
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFunctionRegistry.java?rev=1524198&r1=1524197&r2=1524198&view=diff
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFunctionRegistry.java (original)
+++ hive/branches/branch-0.12/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFunctionRegistry.java Tue Sep 17 20:02:21 2013
@@ -18,7 +18,6 @@
 
 package org.apache.hadoop.hive.ql.exec;
 
-import java.lang.reflect.Type;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.LinkedList;
@@ -27,6 +26,7 @@ import java.util.List;
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
+import org.apache.hadoop.hive.common.type.HiveVarchar;
 import org.apache.hadoop.hive.serde2.io.DateWritable;
 import org.apache.hadoop.hive.serde2.io.DoubleWritable;
 import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
@@ -35,6 +35,7 @@ import org.apache.hadoop.hive.serde2.obj
 import org.apache.hadoop.hive.serde2.typeinfo.PrimitiveTypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
+import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
 import org.apache.hadoop.io.BytesWritable;
 import org.apache.hadoop.io.IntWritable;
 import org.apache.hadoop.io.Text;
@@ -44,6 +45,7 @@ public class TestFunctionRegistry extend
   public class TestUDF {
     public void same(DoubleWritable x, DoubleWritable y) {}
     public void same(HiveDecimalWritable x, HiveDecimalWritable y) {}
+    public void same(Text x, Text y) {}
     public void one(IntWritable x, HiveDecimalWritable y) {}
     public void one(IntWritable x, DoubleWritable y) {}
     public void one(IntWritable x, IntWritable y) {}
@@ -57,8 +59,16 @@ public class TestFunctionRegistry extend
     public void typeaffinity2(DoubleWritable x) {}
   }
 
+  TypeInfo varchar5;
+  TypeInfo varchar10;
+  TypeInfo maxVarchar;
+
   @Override
   protected void setUp() {
+    String maxVarcharTypeName = "varchar(" + HiveVarchar.MAX_VARCHAR_LENGTH + ")";
+    maxVarchar = TypeInfoFactory.getPrimitiveTypeInfo(maxVarcharTypeName);
+    varchar10 = TypeInfoFactory.getPrimitiveTypeInfo("varchar(10)");
+    varchar5 = TypeInfoFactory.getPrimitiveTypeInfo("varchar(5)");
   }
 
   private void implicit(TypeInfo a, TypeInfo b, boolean convertible) {
@@ -72,6 +82,21 @@ public class TestFunctionRegistry extend
     implicit(TypeInfoFactory.stringTypeInfo, TypeInfoFactory.decimalTypeInfo, true);
     implicit(TypeInfoFactory.dateTypeInfo, TypeInfoFactory.decimalTypeInfo, false);
     implicit(TypeInfoFactory.timestampTypeInfo, TypeInfoFactory.decimalTypeInfo, false);
+    implicit(varchar10, TypeInfoFactory.stringTypeInfo, true);
+    implicit(TypeInfoFactory.stringTypeInfo, varchar10, true);
+
+    // Try with parameterized varchar types
+    TypeInfo varchar10 = TypeInfoFactory.getPrimitiveTypeInfo("varchar(10)");
+    TypeInfo varchar20 = TypeInfoFactory.getPrimitiveTypeInfo("varchar(20)");
+
+    implicit(varchar10, TypeInfoFactory.stringTypeInfo, true);
+    implicit(varchar20, TypeInfoFactory.stringTypeInfo, true);
+    implicit(TypeInfoFactory.stringTypeInfo, varchar10, true);
+    implicit(TypeInfoFactory.stringTypeInfo, varchar20, true);
+    implicit(varchar20, varchar10, true);
+
+    implicit(TypeInfoFactory.intTypeInfo, varchar10, true);
+    implicit(TypeInfoFactory.intTypeInfo, TypeInfoFactory.stringTypeInfo, true);
   }
 
   private static List<Method> getMethods(Class<?> udfClass, String methodName) {
@@ -136,8 +161,8 @@ public class TestFunctionRegistry extend
     }
     assert(!throwException);
     assertEquals(2, result.getParameterTypes().length);
-    assertEquals(result.getParameterTypes()[0], a);
-    assertEquals(result.getParameterTypes()[1], b);
+    assertEquals(a, result.getParameterTypes()[0]);
+    assertEquals(b, result.getParameterTypes()[1]);
   }
 
   public void testGetMethodInternal() {
@@ -166,12 +191,15 @@ public class TestFunctionRegistry extend
     verify(TestUDF.class, "one", TypeInfoFactory.intTypeInfo, TypeInfoFactory.intTypeInfo,
            IntWritable.class, IntWritable.class, false);
 
+    // Passing varchar arguments should prefer the version of evaluate() with Text args.
+    verify(TestUDF.class, "same", varchar5, varchar10, Text.class, Text.class, false);
+
     verify(TestUDF.class, "mismatch", TypeInfoFactory.voidTypeInfo, TypeInfoFactory.intTypeInfo,
            null, null, true);
   }
 
   private void common(TypeInfo a, TypeInfo b, TypeInfo result) {
-    assertEquals(FunctionRegistry.getCommonClass(a,b), result);
+    assertEquals(result, FunctionRegistry.getCommonClass(a,b));
   }
 
   public void testCommonClass() {
@@ -183,10 +211,13 @@ public class TestFunctionRegistry extend
            TypeInfoFactory.decimalTypeInfo);
     common(TypeInfoFactory.doubleTypeInfo, TypeInfoFactory.stringTypeInfo,
            TypeInfoFactory.stringTypeInfo);
+
+    common(TypeInfoFactory.stringTypeInfo, varchar10, TypeInfoFactory.stringTypeInfo);
+    common(varchar10, TypeInfoFactory.stringTypeInfo, TypeInfoFactory.stringTypeInfo);
   }
 
   private void comparison(TypeInfo a, TypeInfo b, TypeInfo result) {
-    assertEquals(FunctionRegistry.getCommonClassForComparison(a,b), result);
+    assertEquals(result, FunctionRegistry.getCommonClassForComparison(a,b));
   }
 
   public void testCommonClassComparison() {
@@ -198,6 +229,61 @@ public class TestFunctionRegistry extend
                TypeInfoFactory.decimalTypeInfo);
     comparison(TypeInfoFactory.doubleTypeInfo, TypeInfoFactory.stringTypeInfo,
                TypeInfoFactory.doubleTypeInfo);
+
+    comparison(TypeInfoFactory.dateTypeInfo, TypeInfoFactory.stringTypeInfo,
+        TypeInfoFactory.stringTypeInfo);
+    comparison(TypeInfoFactory.stringTypeInfo, TypeInfoFactory.dateTypeInfo,
+        TypeInfoFactory.stringTypeInfo);
+
+    comparison(TypeInfoFactory.stringTypeInfo, varchar10, TypeInfoFactory.stringTypeInfo);
+    comparison(varchar10, TypeInfoFactory.stringTypeInfo, TypeInfoFactory.stringTypeInfo);
+    comparison(varchar5, varchar10, varchar10);
+  }
+
+  /**
+   * Method to print out the comparison/conversion behavior for data types.
+   */
+  public void testPrintTypeCompatibility() {
+    if (true) {
+      return;
+    }
+
+    String[] typeStrings = {
+        "void", "boolean", "tinyint", "smallint", "int", "bigint", "float", "double",
+        "string", "timestamp", "date", "binary", "decimal", "varchar(10)", "varchar(5)",
+    };
+    for (String cat1 : typeStrings) {
+      TypeInfo ti1 = null;
+      try {
+        ti1 = TypeInfoUtils.getTypeInfoFromTypeString(cat1);
+      } catch (Exception err) {
+        System.out.println(err);
+        System.out.println("Unable to get TypeInfo for " + cat1 + ", skipping ...");
+        continue;
+      }
+
+      for (String cat2 : typeStrings) {
+        TypeInfo commonClass = null;
+        boolean implicitConvertable = false;
+        try {
+          TypeInfo ti2 = TypeInfoUtils.getTypeInfoFromTypeString(cat2);
+          try {
+            commonClass = FunctionRegistry.getCommonClassForComparison(ti1, ti2);
+            //implicitConvertable = FunctionRegistry.implicitConvertable(ti1, ti2);
+          } catch (Exception err) {
+            System.out.println("Failed to get common class for " + ti1 + ", " + ti2 + ": " + err);
+            err.printStackTrace();
+            //System.out.println("Unable to get TypeInfo for " + cat2 + ", skipping ...");
+          }
+          System.out.println(cat1 + " - " + cat2 + ": " + commonClass);
+          //System.out.println(cat1 + " - " + cat2 + ": " + implicitConvertable);
+        } catch (Exception err) {
+          System.out.println(err);
+          System.out.println("Unable to get TypeInfo for " + cat2 + ", skipping ...");
+          continue;
+        }
+      }
+    }
   }
 
   private void unionAll(TypeInfo a, TypeInfo b, TypeInfo result) {
@@ -213,11 +299,26 @@ public class TestFunctionRegistry extend
         TypeInfoFactory.decimalTypeInfo);
     unionAll(TypeInfoFactory.doubleTypeInfo, TypeInfoFactory.stringTypeInfo,
         TypeInfoFactory.stringTypeInfo);
+
+    unionAll(varchar5, varchar10, varchar10);
+    unionAll(varchar10, varchar5, varchar10);
+    unionAll(varchar10, TypeInfoFactory.stringTypeInfo, TypeInfoFactory.stringTypeInfo);
+    unionAll(TypeInfoFactory.stringTypeInfo, varchar10, TypeInfoFactory.stringTypeInfo);
   }
 
   public void testGetTypeInfoForPrimitiveCategory() {
+    // varchar should take string length into account.
+    // varchar(5), varchar(10) => varchar(10)
+    assertEquals(varchar10, FunctionRegistry.getTypeInfoForPrimitiveCategory(
+        (PrimitiveTypeInfo) varchar5, (PrimitiveTypeInfo) varchar10, PrimitiveCategory.VARCHAR));
+    assertEquals(varchar10, FunctionRegistry.getTypeInfoForPrimitiveCategory(
+        (PrimitiveTypeInfo) varchar10, (PrimitiveTypeInfo) varchar5, PrimitiveCategory.VARCHAR));
+
     // non-qualified types should simply return the TypeInfo associated with that type
     assertEquals(TypeInfoFactory.stringTypeInfo, FunctionRegistry.getTypeInfoForPrimitiveCategory(
+        (PrimitiveTypeInfo) varchar10, (PrimitiveTypeInfo) TypeInfoFactory.stringTypeInfo,
+        PrimitiveCategory.STRING));
+    assertEquals(TypeInfoFactory.stringTypeInfo, FunctionRegistry.getTypeInfoForPrimitiveCategory(
         (PrimitiveTypeInfo) TypeInfoFactory.stringTypeInfo,
         (PrimitiveTypeInfo) TypeInfoFactory.stringTypeInfo,
         PrimitiveCategory.STRING));

Added: hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,2 @@
+drop table if exists invalid_varchar_length_1;
+create table invalid_varchar_length_1 (c1 varchar(1000000));

Added: hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_2.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_2.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_2.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_2.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1 @@
+select cast(value as varchar(100000)) from src limit 1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_3.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_3.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_3.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientnegative/invalid_varchar_length_3.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,3 @@
+drop table if exists invalid_varchar_length_3;
+create table invalid_varchar_length_3 (c1 varchar(0));
+

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/alter_varchar1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/alter_varchar1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/alter_varchar1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/alter_varchar1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,32 @@
+drop table alter_varchar_1;
+
+create table alter_varchar_1 (key string, value string);
+insert overwrite table alter_varchar_1
+  select key, value from src limit 5;
+
+select * from alter_varchar_1;
+
+-- change column to varchar
+alter table alter_varchar_1 change column value value varchar(20);
+-- contents should still look the same
+select * from alter_varchar_1;
+
+-- change column to smaller varchar
+alter table alter_varchar_1 change column value value varchar(3);
+-- value column should be truncated now
+select * from alter_varchar_1;
+
+-- change back to bigger varchar
+alter table alter_varchar_1 change column value value varchar(20);
+-- column values should be full size again
+select * from alter_varchar_1;
+
+-- add varchar column
+alter table alter_varchar_1 add columns (key2 int, value2 varchar(10));
+select * from alter_varchar_1;
+
+insert overwrite table alter_varchar_1
+  select key, value, key, value from src limit 5;
+select * from alter_varchar_1;
+
+drop table alter_varchar_1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/ctas_varchar.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/ctas_varchar.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/ctas_varchar.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/ctas_varchar.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,22 @@
+drop table ctas_varchar_1;
+drop table ctas_varchar_2;
+drop view ctas_varchar_3;
+
+create table ctas_varchar_1 (key varchar(10), value string);
+insert overwrite table ctas_varchar_1 
+  select key, value from src sort by key, value limit 5;
+
+-- create table as with varchar column
+create table ctas_varchar_2 as select key, value from ctas_varchar_1;
+
+-- view with varchar column
+create view ctas_varchar_3 as select key, value from ctas_varchar_2;
+
+select key, value from ctas_varchar_1;
+select * from ctas_varchar_2;
+select * from ctas_varchar_3;
+
+
+drop table ctas_varchar_1;
+drop table ctas_varchar_2;
+drop view ctas_varchar_3;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/partition_varchar1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/partition_varchar1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/partition_varchar1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/partition_varchar1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,43 @@
+drop table partition_varchar_1;
+
+create table partition_varchar_1 (key string, value varchar(20)) partitioned by (dt varchar(10), region int);
+
+insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=1)
+  select * from src limit 10;
+insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=2)
+  select * from src limit 5;
+insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=1)
+  select * from src limit 20;
+insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=10)
+  select * from src limit 11;
+
+select distinct dt from partition_varchar_1;
+select * from partition_varchar_1 where dt = '2000-01-01' and region = 2 order by key,value;
+
+-- 15
+select count(*) from partition_varchar_1 where dt = '2000-01-01';
+-- 5
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 2;
+-- 11
+select count(*) from partition_varchar_1 where dt = '2013-08-08' and region = 10;
+-- 30
+select count(*) from partition_varchar_1 where region = 1;
+-- 0
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 3;
+-- 0
+select count(*) from partition_varchar_1 where dt = '1999-01-01';
+
+-- Try other comparison operations
+
+-- 20
+select count(*) from partition_varchar_1 where dt > '2000-01-01' and region = 1;
+-- 10
+select count(*) from partition_varchar_1 where dt < '2000-01-02' and region = 1;
+-- 20
+select count(*) from partition_varchar_1 where dt >= '2000-01-02' and region = 1;
+-- 10
+select count(*) from partition_varchar_1 where dt <= '2000-01-01' and region = 1;
+-- 20
+select count(*) from partition_varchar_1 where dt <> '2000-01-01' and region = 1;
+
+drop table partition_varchar_1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,32 @@
+drop table varchar1;
+drop table varchar1_1;
+
+create table varchar1 (key varchar(10), value varchar(20));
+create table varchar1_1 (key string, value string);
+
+-- load from file
+load data local inpath '../data/files/srcbucket0.txt' overwrite into table varchar1;
+select * from varchar1 limit 2;
+
+-- insert overwrite, from same/different length varchar
+insert overwrite table varchar1
+  select cast(key as varchar(10)), cast(value as varchar(15)) from src limit 2;
+select key, value from varchar1;
+
+-- insert overwrite, from string
+insert overwrite table varchar1
+  select key, value from src limit 2;
+select key, value from varchar1;
+
+-- insert string from varchar
+insert overwrite table varchar1_1
+  select key, value from varchar1 limit 2;
+select key, value from varchar1_1;
+
+-- respect string length
+insert overwrite table varchar1 
+  select key, cast(value as varchar(3)) from src limit 2;
+select key, value from varchar1;
+
+drop table varchar1;
+drop table varchar1_1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_2.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_2.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_2.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_2.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,36 @@
+drop table varchar_2;
+
+create table varchar_2 (
+  key varchar(10),
+  value varchar(20)
+);
+
+insert overwrite table varchar_2 select * from src;
+
+select value, sum(cast(key as int)), count(*) numrows
+from src
+group by value
+order by value asc
+limit 5;
+
+-- should match the query from src
+select value, sum(cast(key as int)), count(*) numrows
+from varchar_2
+group by value
+order by value asc
+limit 5;
+
+select value, sum(cast(key as int)), count(*) numrows
+from src
+group by value
+order by value desc
+limit 5;
+
+-- should match the query from src
+select value, sum(cast(key as int)), count(*) numrows
+from varchar_2
+group by value
+order by value desc
+limit 5;
+
+drop table varchar_2;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_cast.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_cast.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_cast.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_cast.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,84 @@
+
+-- Cast from varchar to other data types
+select
+  cast(cast('11' as string) as tinyint),
+  cast(cast('11' as string) as smallint),
+  cast(cast('11' as string) as int),
+  cast(cast('11' as string) as bigint),
+  cast(cast('11.00' as string) as float),
+  cast(cast('11.00' as string) as double),
+  cast(cast('11.00' as string) as decimal)
+from src limit 1;
+
+select
+  cast(cast('11' as varchar(10)) as tinyint),
+  cast(cast('11' as varchar(10)) as smallint),
+  cast(cast('11' as varchar(10)) as int),
+  cast(cast('11' as varchar(10)) as bigint),
+  cast(cast('11.00' as varchar(10)) as float),
+  cast(cast('11.00' as varchar(10)) as double),
+  cast(cast('11.00' as varchar(10)) as decimal)
+from src limit 1;
+
+select
+  cast(cast('2011-01-01' as string) as date),
+  cast(cast('2011-01-01 01:02:03' as string) as timestamp)
+from src limit 1;
+
+select
+  cast(cast('2011-01-01' as varchar(10)) as date),
+  cast(cast('2011-01-01 01:02:03' as varchar(30)) as timestamp)
+from src limit 1;
+
+-- no tests from string/varchar to boolean, that conversion doesn't look useful
+select
+  cast(cast('abc123' as string) as string),
+  cast(cast('abc123' as string) as varchar(10))
+from src limit 1;
+
+select
+  cast(cast('abc123' as varchar(10)) as string),
+  cast(cast('abc123' as varchar(10)) as varchar(10))
+from src limit 1;
+
+-- cast from other types to varchar
+select
+  cast(cast(11 as tinyint) as string),
+  cast(cast(11 as smallint) as string),
+  cast(cast(11 as int) as string),
+  cast(cast(11 as bigint) as string),
+  cast(cast(11.00 as float) as string),
+  cast(cast(11.00 as double) as string),
+  cast(cast(11.00 as decimal) as string)
+from src limit 1;
+
+select
+  cast(cast(11 as tinyint) as varchar(10)),
+  cast(cast(11 as smallint) as varchar(10)),
+  cast(cast(11 as int) as varchar(10)),
+  cast(cast(11 as bigint) as varchar(10)),
+  cast(cast(11.00 as float) as varchar(10)),
+  cast(cast(11.00 as double) as varchar(10)),
+  cast(cast(11.00 as decimal) as varchar(10))
+from src limit 1;
+
+select
+  cast(date '2011-01-01' as string),
+  cast(timestamp('2011-01-01 01:02:03') as string)
+from src limit 1;
+
+select
+  cast(date '2011-01-01' as varchar(10)),
+  cast(timestamp('2011-01-01 01:02:03') as varchar(30))
+from src limit 1;
+
+select
+  cast(true as string),
+  cast(false as string)
+from src limit 1;
+
+select
+  cast(true as varchar(10)),
+  cast(false as varchar(10))
+from src limit 1;
+

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_comparison.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_comparison.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_comparison.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_comparison.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,40 @@
+
+-- Should all be true
+select
+  cast('abc' as varchar(10)) =  cast('abc' as varchar(10)),
+  cast('abc' as varchar(10)) <= cast('abc' as varchar(10)),
+  cast('abc' as varchar(10)) >= cast('abc' as varchar(10)),
+  cast('abc' as varchar(10)) <  cast('abd' as varchar(10)),
+  cast('abc' as varchar(10)) >  cast('abb' as varchar(10)),
+  cast('abc' as varchar(10)) <> cast('abb' as varchar(10))
+from src limit 1;
+
+-- Different varchar lengths should still compare the same
+select
+  cast('abc' as varchar(10)) =  cast('abc' as varchar(3)),
+  cast('abc' as varchar(10)) <= cast('abc' as varchar(3)),
+  cast('abc' as varchar(10)) >= cast('abc' as varchar(3)),
+  cast('abc' as varchar(10)) <  cast('abd' as varchar(3)),
+  cast('abc' as varchar(10)) >  cast('abb' as varchar(3)),
+  cast('abc' as varchar(10)) <> cast('abb' as varchar(3))
+from src limit 1;
+
+-- Should work with string types as well
+select
+  cast('abc' as varchar(10)) =  'abc',
+  cast('abc' as varchar(10)) <= 'abc',
+  cast('abc' as varchar(10)) >= 'abc',
+  cast('abc' as varchar(10)) <  'abd',
+  cast('abc' as varchar(10)) >  'abb',
+  cast('abc' as varchar(10)) <> 'abb'
+from src limit 1;
+
+-- leading space is significant for varchar
+select
+  cast(' abc' as varchar(10)) <> cast('abc' as varchar(10))
+from src limit 1;
+
+-- trailing space is significant for varchar
+select
+  cast('abc ' as varchar(10)) <> cast('abc' as varchar(10))
+from src limit 1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_join1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_join1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_join1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_join1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,35 @@
+drop table varchar_join1_vc1;
+drop table varchar_join1_vc2;
+drop table varchar_join1_str;
+
+create table  varchar_join1_vc1 (
+  c1 int,
+  c2 varchar(10)
+);
+
+create table  varchar_join1_vc2 (
+  c1 int,
+  c2 varchar(20)
+);
+
+create table  varchar_join1_str (
+  c1 int,
+  c2 string
+);
+
+load data local inpath '../data/files/vc1.txt' into table varchar_join1_vc1;
+load data local inpath '../data/files/vc1.txt' into table varchar_join1_vc2;
+load data local inpath '../data/files/vc1.txt' into table varchar_join1_str;
+
+-- Join varchar with same length varchar
+select * from varchar_join1_vc1 a join varchar_join1_vc1 b on (a.c2 = b.c2) order by a.c1;
+
+-- Join varchar with different length varchar
+select * from varchar_join1_vc1 a join varchar_join1_vc2 b on (a.c2 = b.c2) order by a.c1;
+
+-- Join varchar with string
+select * from varchar_join1_vc1 a join varchar_join1_str b on (a.c2 = b.c2) order by a.c1;
+
+drop table varchar_join1_vc1;
+drop table varchar_join1_vc2;
+drop table varchar_join1_str;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_nested_types.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_nested_types.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_nested_types.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_nested_types.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,53 @@
+drop table varchar_nested_1;
+drop table varchar_nested_array;
+drop table varchar_nested_map;
+drop table varchar_nested_struct;
+drop table varchar_nested_cta;
+drop table varchar_nested_view;
+
+create table varchar_nested_1 (key int, value varchar(20));
+insert overwrite table varchar_nested_1
+  select key, value from src limit 5;
+
+-- arrays
+create table varchar_nested_array (c1 array<varchar(20)>);
+insert overwrite table varchar_nested_array
+  select array(value, value) from varchar_nested_1;
+describe varchar_nested_array;
+select * from varchar_nested_array;
+
+-- maps
+create table varchar_nested_map (c1 map<int, varchar(20)>);
+insert overwrite table varchar_nested_map
+  select map(key, value) from varchar_nested_1;
+describe varchar_nested_map;
+select * from varchar_nested_map;
+
+-- structs
+create table varchar_nested_struct (c1 struct<a:int, b:varchar(20), c:string>);
+insert overwrite table varchar_nested_struct
+  select named_struct('a', key,
+                      'b', value,
+                      'c', cast(value as string))
+  from varchar_nested_1;
+describe varchar_nested_struct;
+select * from varchar_nested_struct;
+
+-- nested type with create table as
+create table varchar_nested_cta as 
+  select * from varchar_nested_struct;
+describe varchar_nested_cta;
+select * from varchar_nested_cta;
+
+-- nested type with view
+create table varchar_nested_view as 
+  select * from varchar_nested_struct;
+describe varchar_nested_view;
+select * from varchar_nested_view;
+
+drop table varchar_nested_1;
+drop table varchar_nested_array;
+drop table varchar_nested_map;
+drop table varchar_nested_struct;
+drop table varchar_nested_cta;
+drop table varchar_nested_view;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_udf1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_udf1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_udf1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_udf1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,156 @@
+drop table varchar_udf_1;
+
+create table varchar_udf_1 (c1 string, c2 string, c3 varchar(10), c4 varchar(20));
+insert overwrite table varchar_udf_1
+  select key, value, key, value from src limit 5;
+
+-- UDFs with varchar support
+select 
+  concat(c1, c2),
+  concat(c3, c4),
+  concat(c1, c2) = concat(c3, c4)
+from varchar_udf_1 limit 1;
+
+select
+  upper(c2),
+  upper(c4),
+  upper(c2) = upper(c4)
+from varchar_udf_1 limit 1;
+
+select
+  lower(c2),
+  lower(c4),
+  lower(c2) = lower(c4)
+from varchar_udf_1 limit 1;
+
+-- Scalar UDFs
+select
+  ascii(c2),
+  ascii(c4),
+  ascii(c2) = ascii(c4)
+from varchar_udf_1 limit 1;
+
+select 
+  concat_ws('|', c1, c2),
+  concat_ws('|', c3, c4),
+  concat_ws('|', c1, c2) = concat_ws('|', c3, c4)
+from varchar_udf_1 limit 1;
+
+select
+  decode(encode(c2, 'US-ASCII'), 'US-ASCII'),
+  decode(encode(c4, 'US-ASCII'), 'US-ASCII'),
+  decode(encode(c2, 'US-ASCII'), 'US-ASCII') = decode(encode(c4, 'US-ASCII'), 'US-ASCII')
+from varchar_udf_1 limit 1;
+
+select
+  instr(c2, '_'),
+  instr(c4, '_'),
+  instr(c2, '_') = instr(c4, '_')
+from varchar_udf_1 limit 1;
+
+select
+  length(c2),
+  length(c4),
+  length(c2) = length(c4)
+from varchar_udf_1 limit 1;
+
+select
+  locate('a', 'abcdabcd', 3),
+  locate(cast('a' as varchar(1)), cast('abcdabcd' as varchar(10)), 3),
+  locate('a', 'abcdabcd', 3) = locate(cast('a' as varchar(1)), cast('abcdabcd' as varchar(10)), 3)
+from varchar_udf_1 limit 1;
+
+select
+  lpad(c2, 15, ' '),
+  lpad(c4, 15, ' '),
+  lpad(c2, 15, ' ') = lpad(c4, 15, ' ')
+from varchar_udf_1 limit 1;
+
+select
+  ltrim(c2),
+  ltrim(c4),
+  ltrim(c2) = ltrim(c4)
+from varchar_udf_1 limit 1;
+
+select
+  regexp(c2, 'val'),
+  regexp(c4, 'val'),
+  regexp(c2, 'val') = regexp(c4, 'val')
+from varchar_udf_1 limit 1;
+
+select
+  regexp_extract(c2, 'val_([0-9]+)', 1),
+  regexp_extract(c4, 'val_([0-9]+)', 1),
+  regexp_extract(c2, 'val_([0-9]+)', 1) = regexp_extract(c4, 'val_([0-9]+)', 1)
+from varchar_udf_1 limit 1;
+
+select
+  regexp_replace(c2, 'val', 'replaced'),
+  regexp_replace(c4, 'val', 'replaced'),
+  regexp_replace(c2, 'val', 'replaced') = regexp_replace(c4, 'val', 'replaced')
+from varchar_udf_1 limit 1;
+
+select
+  reverse(c2),
+  reverse(c4),
+  reverse(c2) = reverse(c4)
+from varchar_udf_1 limit 1;
+
+select
+  rpad(c2, 15, ' '),
+  rpad(c4, 15, ' '),
+  rpad(c2, 15, ' ') = rpad(c4, 15, ' ')
+from varchar_udf_1 limit 1;
+
+select
+  rtrim(c2),
+  rtrim(c4),
+  rtrim(c2) = rtrim(c4)
+from varchar_udf_1 limit 1;
+
+select
+  sentences('See spot run.  See jane run.'),
+  sentences(cast('See spot run.  See jane run.' as varchar(50)))
+from varchar_udf_1 limit 1;
+
+select
+  split(c2, '_'),
+  split(c4, '_')
+from varchar_udf_1 limit 1;
+
+select 
+  str_to_map('a:1,b:2,c:3',',',':'),
+  str_to_map(cast('a:1,b:2,c:3' as varchar(20)),',',':')
+from varchar_udf_1 limit 1;
+
+select
+  substr(c2, 1, 3),
+  substr(c4, 1, 3),
+  substr(c2, 1, 3) = substr(c4, 1, 3)
+from varchar_udf_1 limit 1;
+
+select
+  trim(c2),
+  trim(c4),
+  trim(c2) = trim(c4)
+from varchar_udf_1 limit 1;
+
+
+-- Aggregate Functions
+select
+  compute_stats(c2, 16),
+  compute_stats(c4, 16)
+from varchar_udf_1;
+
+select
+  min(c2),
+  min(c4)
+from varchar_udf_1;
+
+select
+  max(c2),
+  max(c4)
+from varchar_udf_1;
+
+
+drop table varchar_udf_1;

Added: hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_union1.q
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_union1.q?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_union1.q (added)
+++ hive/branches/branch-0.12/ql/src/test/queries/clientpositive/varchar_union1.q Tue Sep 17 20:02:21 2013
@@ -0,0 +1,47 @@
+drop table varchar_union1_vc1;
+drop table varchar_union1_vc2;
+drop table varchar_union1_str;
+
+create table  varchar_union1_vc1 (
+  c1 int,
+  c2 varchar(10)
+);
+
+create table  varchar_union1_vc2 (
+  c1 int,
+  c2 varchar(20)
+);
+
+create table  varchar_union1_str (
+  c1 int,
+  c2 string
+);
+
+load data local inpath '../data/files/vc1.txt' into table varchar_union1_vc1;
+load data local inpath '../data/files/vc1.txt' into table varchar_union1_vc2;
+load data local inpath '../data/files/vc1.txt' into table varchar_union1_str;
+
+-- union varchar with same length varchar
+select * from (
+  select * from varchar_union1_vc1
+  union all
+  select * from varchar_union1_vc1 limit 1
+) q1 sort by c1;
+
+-- union varchar with different length varchar
+select * from (
+  select * from varchar_union1_vc1
+  union all
+  select * from varchar_union1_vc2 limit 1
+) q1 sort by c1;
+
+-- union varchar with string
+select * from (
+  select * from varchar_union1_vc1
+  union all
+  select * from varchar_union1_str limit 1
+) q1 sort by c1;
+
+drop table varchar_union1_vc1;
+drop table varchar_union1_vc2;
+drop table varchar_union1_str;

Added: hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_1.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_1.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_1.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_1.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1,5 @@
+PREHOOK: query: drop table if exists invalid_varchar_length_1
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists invalid_varchar_length_1
+POSTHOOK: type: DROPTABLE
+FAILED: SemanticException org.apache.hadoop.hive.serde2.SerDeException: Length 1000000 exceeds max varchar length of 65535

Added: hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_2.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_2.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_2.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_2.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1 @@
+FAILED: RuntimeException Error creating type parameters for varchar(100000): org.apache.hadoop.hive.serde2.SerDeException: Error creating type params for varchar: org.apache.hadoop.hive.serde2.SerDeException: Length 100000 exceeds max varchar length of 65535

Added: hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_3.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_3.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_3.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientnegative/invalid_varchar_length_3.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1,5 @@
+PREHOOK: query: drop table if exists invalid_varchar_length_3
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists invalid_varchar_length_3
+POSTHOOK: type: DROPTABLE
+FAILED: SemanticException org.apache.hadoop.hive.serde2.SerDeException: VARCHAR length must be positive

Added: hive/branches/branch-0.12/ql/src/test/results/clientpositive/alter_varchar1.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientpositive/alter_varchar1.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientpositive/alter_varchar1.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientpositive/alter_varchar1.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1,199 @@
+PREHOOK: query: drop table alter_varchar_1
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table alter_varchar_1
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table alter_varchar_1 (key string, value string)
+PREHOOK: type: CREATETABLE
+POSTHOOK: query: create table alter_varchar_1 (key string, value string)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: default@alter_varchar_1
+PREHOOK: query: insert overwrite table alter_varchar_1
+  select key, value from src limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: insert overwrite table alter_varchar_1
+  select key, value from src limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val_238
+86	val_86
+311	val_311
+27	val_27
+165	val_165
+PREHOOK: query: -- change column to varchar
+alter table alter_varchar_1 change column value value varchar(20)
+PREHOOK: type: ALTERTABLE_RENAMECOL
+PREHOOK: Input: default@alter_varchar_1
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: -- change column to varchar
+alter table alter_varchar_1 change column value value varchar(20)
+POSTHOOK: type: ALTERTABLE_RENAMECOL
+POSTHOOK: Input: default@alter_varchar_1
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: -- contents should still look the same
+select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: -- contents should still look the same
+select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val_238
+86	val_86
+311	val_311
+27	val_27
+165	val_165
+PREHOOK: query: -- change column to smaller varchar
+alter table alter_varchar_1 change column value value varchar(3)
+PREHOOK: type: ALTERTABLE_RENAMECOL
+PREHOOK: Input: default@alter_varchar_1
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: -- change column to smaller varchar
+alter table alter_varchar_1 change column value value varchar(3)
+POSTHOOK: type: ALTERTABLE_RENAMECOL
+POSTHOOK: Input: default@alter_varchar_1
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: -- value column should be truncated now
+select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: -- value column should be truncated now
+select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val
+86	val
+311	val
+27	val
+165	val
+PREHOOK: query: -- change back to bigger varchar
+alter table alter_varchar_1 change column value value varchar(20)
+PREHOOK: type: ALTERTABLE_RENAMECOL
+PREHOOK: Input: default@alter_varchar_1
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: -- change back to bigger varchar
+alter table alter_varchar_1 change column value value varchar(20)
+POSTHOOK: type: ALTERTABLE_RENAMECOL
+POSTHOOK: Input: default@alter_varchar_1
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: -- column values should be full size again
+select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: -- column values should be full size again
+select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val_238
+86	val_86
+311	val_311
+27	val_27
+165	val_165
+PREHOOK: query: -- add varchar column
+alter table alter_varchar_1 add columns (key2 int, value2 varchar(10))
+PREHOOK: type: ALTERTABLE_ADDCOLS
+PREHOOK: Input: default@alter_varchar_1
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: -- add varchar column
+alter table alter_varchar_1 add columns (key2 int, value2 varchar(10))
+POSTHOOK: type: ALTERTABLE_ADDCOLS
+POSTHOOK: Input: default@alter_varchar_1
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val_238	NULL	NULL
+86	val_86	NULL	NULL
+311	val_311	NULL	NULL
+27	val_27	NULL	NULL
+165	val_165	NULL	NULL
+PREHOOK: query: insert overwrite table alter_varchar_1
+  select key, value, key, value from src limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: insert overwrite table alter_varchar_1
+  select key, value, key, value from src limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key2 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value2 EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: select * from alter_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: select * from alter_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@alter_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key2 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value2 EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+238	val_238	238	val_238
+86	val_86	86	val_86
+311	val_311	311	val_311
+27	val_27	27	val_27
+165	val_165	165	val_165
+PREHOOK: query: drop table alter_varchar_1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@alter_varchar_1
+PREHOOK: Output: default@alter_varchar_1
+POSTHOOK: query: drop table alter_varchar_1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@alter_varchar_1
+POSTHOOK: Output: default@alter_varchar_1
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.key2 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: alter_varchar_1.value2 EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]

Added: hive/branches/branch-0.12/ql/src/test/results/clientpositive/ctas_varchar.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientpositive/ctas_varchar.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientpositive/ctas_varchar.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientpositive/ctas_varchar.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1,126 @@
+PREHOOK: query: drop table ctas_varchar_1
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table ctas_varchar_1
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: drop table ctas_varchar_2
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table ctas_varchar_2
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: drop view ctas_varchar_3
+PREHOOK: type: DROPVIEW
+POSTHOOK: query: drop view ctas_varchar_3
+POSTHOOK: type: DROPVIEW
+PREHOOK: query: create table ctas_varchar_1 (key varchar(10), value string)
+PREHOOK: type: CREATETABLE
+POSTHOOK: query: create table ctas_varchar_1 (key varchar(10), value string)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: default@ctas_varchar_1
+PREHOOK: query: insert overwrite table ctas_varchar_1 
+  select key, value from src sort by key, value limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@ctas_varchar_1
+POSTHOOK: query: insert overwrite table ctas_varchar_1 
+  select key, value from src sort by key, value limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@ctas_varchar_1
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: -- create table as with varchar column
+create table ctas_varchar_2 as select key, value from ctas_varchar_1
+PREHOOK: type: CREATETABLE_AS_SELECT
+PREHOOK: Input: default@ctas_varchar_1
+POSTHOOK: query: -- create table as with varchar column
+create table ctas_varchar_2 as select key, value from ctas_varchar_1
+POSTHOOK: type: CREATETABLE_AS_SELECT
+POSTHOOK: Input: default@ctas_varchar_1
+POSTHOOK: Output: default@ctas_varchar_2
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: -- view with varchar column
+create view ctas_varchar_3 as select key, value from ctas_varchar_2
+PREHOOK: type: CREATEVIEW
+POSTHOOK: query: -- view with varchar column
+create view ctas_varchar_3 as select key, value from ctas_varchar_2
+POSTHOOK: type: CREATEVIEW
+POSTHOOK: Output: default@ctas_varchar_3
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: select key, value from ctas_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@ctas_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: select key, value from ctas_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@ctas_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+0	val_0
+0	val_0
+0	val_0
+10	val_10
+100	val_100
+PREHOOK: query: select * from ctas_varchar_2
+PREHOOK: type: QUERY
+PREHOOK: Input: default@ctas_varchar_2
+#### A masked pattern was here ####
+POSTHOOK: query: select * from ctas_varchar_2
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@ctas_varchar_2
+#### A masked pattern was here ####
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+0	val_0
+0	val_0
+0	val_0
+10	val_10
+100	val_100
+PREHOOK: query: select * from ctas_varchar_3
+PREHOOK: type: QUERY
+PREHOOK: Input: default@ctas_varchar_2
+PREHOOK: Input: default@ctas_varchar_3
+#### A masked pattern was here ####
+POSTHOOK: query: select * from ctas_varchar_3
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@ctas_varchar_2
+POSTHOOK: Input: default@ctas_varchar_3
+#### A masked pattern was here ####
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+0	val_0
+0	val_0
+0	val_0
+10	val_10
+100	val_100
+PREHOOK: query: drop table ctas_varchar_1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@ctas_varchar_1
+PREHOOK: Output: default@ctas_varchar_1
+POSTHOOK: query: drop table ctas_varchar_1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@ctas_varchar_1
+POSTHOOK: Output: default@ctas_varchar_1
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: drop table ctas_varchar_2
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@ctas_varchar_2
+PREHOOK: Output: default@ctas_varchar_2
+POSTHOOK: query: drop table ctas_varchar_2
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@ctas_varchar_2
+POSTHOOK: Output: default@ctas_varchar_2
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: drop view ctas_varchar_3
+PREHOOK: type: DROPVIEW
+PREHOOK: Input: default@ctas_varchar_3
+PREHOOK: Output: default@ctas_varchar_3
+POSTHOOK: query: drop view ctas_varchar_3
+POSTHOOK: type: DROPVIEW
+POSTHOOK: Input: default@ctas_varchar_3
+POSTHOOK: Output: default@ctas_varchar_3
+POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ]

Added: hive/branches/branch-0.12/ql/src/test/results/clientpositive/partition_varchar1.q.out
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.12/ql/src/test/results/clientpositive/partition_varchar1.q.out?rev=1524198&view=auto
==============================================================================
--- hive/branches/branch-0.12/ql/src/test/results/clientpositive/partition_varchar1.q.out (added)
+++ hive/branches/branch-0.12/ql/src/test/results/clientpositive/partition_varchar1.q.out Tue Sep 17 20:02:21 2013
@@ -0,0 +1,369 @@
+PREHOOK: query: drop table partition_varchar_1
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table partition_varchar_1
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table partition_varchar_1 (key string, value varchar(20)) partitioned by (dt varchar(10), region int)
+PREHOOK: type: CREATETABLE
+POSTHOOK: query: create table partition_varchar_1 (key string, value varchar(20)) partitioned by (dt varchar(10), region int)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: default@partition_varchar_1
+PREHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=1)
+  select * from src limit 10
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=1
+POSTHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=1)
+  select * from src limit 10
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=1
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=2)
+  select * from src limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=2
+POSTHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2000-01-01', region=2)
+  select * from src limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=2
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=1)
+  select * from src limit 20
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@partition_varchar_1@dt=2013-08-08/region=1
+POSTHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=1)
+  select * from src limit 20
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@partition_varchar_1@dt=2013-08-08/region=1
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=10)
+  select * from src limit 11
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: default@partition_varchar_1@dt=2013-08-08/region=10
+POSTHOOK: query: insert overwrite table partition_varchar_1 partition(dt='2013-08-08', region=10)
+  select * from src limit 11
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: default@partition_varchar_1@dt=2013-08-08/region=10
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+PREHOOK: query: select distinct dt from partition_varchar_1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=10
+#### A masked pattern was here ####
+POSTHOOK: query: select distinct dt from partition_varchar_1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=10
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+2000-01-01
+2013-08-08
+PREHOOK: query: select * from partition_varchar_1 where dt = '2000-01-01' and region = 2 order by key,value
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: query: select * from partition_varchar_1 where dt = '2000-01-01' and region = 2 order by key,value
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+165	val_165	2000-01-01	2
+238	val_238	2000-01-01	2
+27	val_27	2000-01-01	2
+311	val_311	2000-01-01	2
+86	val_86	2000-01-01	2
+PREHOOK: query: -- 15
+select count(*) from partition_varchar_1 where dt = '2000-01-01'
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: query: -- 15
+select count(*) from partition_varchar_1 where dt = '2000-01-01'
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+15
+PREHOOK: query: -- 5
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 2
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: query: -- 5
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 2
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=2
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+5
+PREHOOK: query: -- 11
+select count(*) from partition_varchar_1 where dt = '2013-08-08' and region = 10
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=10
+#### A masked pattern was here ####
+POSTHOOK: query: -- 11
+select count(*) from partition_varchar_1 where dt = '2013-08-08' and region = 10
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=10
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+11
+PREHOOK: query: -- 30
+select count(*) from partition_varchar_1 where region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 30
+select count(*) from partition_varchar_1 where region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+30
+PREHOOK: query: -- 0
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 3
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 0
+select count(*) from partition_varchar_1 where dt = '2000-01-01' and region = 3
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+0
+PREHOOK: query: -- 0
+select count(*) from partition_varchar_1 where dt = '1999-01-01'
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 0
+select count(*) from partition_varchar_1 where dt = '1999-01-01'
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+0
+PREHOOK: query: -- Try other comparison operations
+
+-- 20
+select count(*) from partition_varchar_1 where dt > '2000-01-01' and region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- Try other comparison operations
+
+-- 20
+select count(*) from partition_varchar_1 where dt > '2000-01-01' and region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+20
+PREHOOK: query: -- 10
+select count(*) from partition_varchar_1 where dt < '2000-01-02' and region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 10
+select count(*) from partition_varchar_1 where dt < '2000-01-02' and region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+10
+PREHOOK: query: -- 20
+select count(*) from partition_varchar_1 where dt >= '2000-01-02' and region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 20
+select count(*) from partition_varchar_1 where dt >= '2000-01-02' and region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+20
+PREHOOK: query: -- 10
+select count(*) from partition_varchar_1 where dt <= '2000-01-01' and region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 10
+select count(*) from partition_varchar_1 where dt <= '2000-01-01' and region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2000-01-01/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+10
+PREHOOK: query: -- 20
+select count(*) from partition_varchar_1 where dt <> '2000-01-01' and region = 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: query: -- 20
+select count(*) from partition_varchar_1 where dt <> '2000-01-01' and region = 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Input: default@partition_varchar_1@dt=2013-08-08/region=1
+#### A masked pattern was here ####
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+20
+PREHOOK: query: drop table partition_varchar_1
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@partition_varchar_1
+PREHOOK: Output: default@partition_varchar_1
+POSTHOOK: query: drop table partition_varchar_1
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@partition_varchar_1
+POSTHOOK: Output: default@partition_varchar_1
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2000-01-01,region=2).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=10).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ]
+POSTHOOK: Lineage: partition_varchar_1 PARTITION(dt=2013-08-08,region=1).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ]



Mime
View raw message