You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by vi...@apache.org on 2018/01/23 23:34:40 UTC

[1/3] hive git commit: HIVE-18393 : Error returned when some other type is read as string from parquet tables (Janaki Lahorani via Vihang Karajgaonkar)

Repository: hive
Updated Branches:
  refs/heads/master fff86f3a6 -> 00e8826ba


http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java
----------------------------------------------------------------------
diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java
index 62e6c8f..ba407aa 100644
--- a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java
+++ b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java
@@ -18,10 +18,17 @@
 package org.apache.hadoop.hive.serde2.objectinspector.primitive;
 
 import org.apache.hadoop.hive.common.type.HiveChar;
+import org.apache.hadoop.hive.serde2.io.DoubleWritable;
 import org.apache.hadoop.hive.serde2.io.HiveCharWritable;
+import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
+import org.apache.hadoop.hive.serde2.io.TimestampWritable;
 import org.apache.hadoop.hive.serde2.typeinfo.BaseCharUtils;
 import org.apache.hadoop.hive.serde2.typeinfo.CharTypeInfo;
 import org.apache.hadoop.io.Text;
+import org.apache.hadoop.io.FloatWritable;
+import org.apache.hadoop.io.LongWritable;
+import org.apache.hadoop.io.IntWritable;
+import org.apache.hadoop.io.BooleanWritable;
 
 import java.nio.ByteBuffer;
 import java.nio.CharBuffer;
@@ -45,8 +52,11 @@ public class WritableHiveCharObjectInspector extends AbstractPrimitiveWritableOb
       return null;
     }
 
-    if (o instanceof Text) {
-      String str = ((Text)o).toString();
+    if ((o instanceof Text) || (o instanceof TimestampWritable)
+        || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable)
+        || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      String str = o.toString();
       return new HiveChar(str, ((CharTypeInfo)typeInfo).getLength());
     }
 
@@ -65,8 +75,11 @@ public class WritableHiveCharObjectInspector extends AbstractPrimitiveWritableOb
       return null;
     }
 
-    if (o instanceof Text) {
-      String str = ((Text)o).toString();
+    if ((o instanceof Text) || (o instanceof TimestampWritable)
+        || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable)
+        || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      String str = o.toString();
       HiveCharWritable hcw = new HiveCharWritable();
       hcw.set(str, ((CharTypeInfo)typeInfo).getLength());
       return hcw;

http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java
----------------------------------------------------------------------
diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java
index a6f42a5..81c0550 100644
--- a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java
+++ b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java
@@ -17,17 +17,20 @@
  */
 package org.apache.hadoop.hive.serde2.objectinspector.primitive;
 
-import org.apache.hadoop.hive.common.type.HiveChar;
+import org.apache.hadoop.hive.serde2.io.DoubleWritable;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.apache.hadoop.hive.common.type.HiveVarchar;
-import org.apache.hadoop.hive.serde2.io.HiveCharWritable;
-import org.apache.hadoop.hive.serde2.io.HiveVarcharWritable;
-import org.apache.hadoop.hive.serde2.typeinfo.CharTypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.VarcharTypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.BaseCharUtils;
+import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
+import org.apache.hadoop.hive.serde2.io.TimestampWritable;
+import org.apache.hadoop.hive.serde2.io.HiveVarcharWritable;
 import org.apache.hadoop.io.Text;
-import org.apache.hive.common.util.HiveStringUtils;
+import org.apache.hadoop.io.FloatWritable;
+import org.apache.hadoop.io.LongWritable;
+import org.apache.hadoop.io.IntWritable;
+import org.apache.hadoop.io.BooleanWritable;
 
 public class WritableHiveVarcharObjectInspector extends AbstractPrimitiveWritableObjectInspector
 implements SettableHiveVarcharObjectInspector {
@@ -49,8 +52,11 @@ implements SettableHiveVarcharObjectInspector {
       return null;
     }
 
-    if (o instanceof Text) {
-      String str = ((Text)o).toString();
+    if ((o instanceof Text) || (o instanceof TimestampWritable)
+        || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable)
+        || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      String str = o.toString();
       return new HiveVarchar(str, ((VarcharTypeInfo)typeInfo).getLength());
     }
 
@@ -69,8 +75,11 @@ implements SettableHiveVarcharObjectInspector {
       return null;
     }
 
-    if (o instanceof Text) {
-      String str = ((Text)o).toString();
+    if ((o instanceof Text) || (o instanceof TimestampWritable)
+        || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable)
+        || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      String str = o.toString();
       HiveVarcharWritable hcw = new HiveVarcharWritable();
       hcw.set(str, ((VarcharTypeInfo)typeInfo).getLength());
       return hcw;


[3/3] hive git commit: HIVE-18393 : Error returned when some other type is read as string from parquet tables (Janaki Lahorani via Vihang Karajgaonkar)

Posted by vi...@apache.org.
HIVE-18393 : Error returned when some other type is read as string from parquet tables (Janaki Lahorani via Vihang Karajgaonkar)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/00e8826b
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/00e8826b
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/00e8826b

Branch: refs/heads/master
Commit: 00e8826ba85f24b2bc47ae2e85664f4574732874
Parents: fff86f3
Author: Vihang Karajgaonkar <vi...@cloudera.com>
Authored: Tue Jan 23 15:10:03 2018 -0800
Committer: Vihang Karajgaonkar <vi...@cloudera.com>
Committed: Tue Jan 23 15:10:03 2018 -0800

----------------------------------------------------------------------
 .../serde/primitive/ParquetStringInspector.java |   25 +-
 .../queries/clientpositive/typechangetest.q     |  569 ++++
 .../results/clientpositive/typechangetest.q.out | 2540 ++++++++++++++++++
 .../WritableHiveCharObjectInspector.java        |   21 +-
 .../WritableHiveVarcharObjectInspector.java     |   27 +-
 5 files changed, 3168 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java
index 64dd79e..dead324 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java
@@ -16,13 +16,22 @@ package org.apache.hadoop.hive.ql.io.parquet.serde.primitive;
 import java.io.UnsupportedEncodingException;
 import java.nio.charset.CharacterCodingException;
 
+import org.apache.hadoop.hive.serde2.io.DoubleWritable;
+import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
+import org.apache.hadoop.hive.serde2.io.TimestampWritable;
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.JavaStringObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.SettableStringObjectInspector;
 import org.apache.hadoop.io.BytesWritable;
 import org.apache.hadoop.io.Text;
+import org.apache.hadoop.io.FloatWritable;
+import org.apache.hadoop.io.LongWritable;
+import org.apache.hadoop.io.IntWritable;
+import org.apache.hadoop.io.BooleanWritable;
 
 /**
- * The ParquetStringInspector inspects a BinaryWritable to give a Text or String.
+ * The ParquetStringInspector inspects a BytesWritable, TimestampWritable, HiveDecimalWritable,
+ * DoubleWritable, FloatWritable, LongWritable, IntWritable, and BooleanWritable to give a Text
+ * or String.
  *
  */
 public class ParquetStringInspector extends JavaStringObjectInspector implements SettableStringObjectInspector {
@@ -49,6 +58,13 @@ public class ParquetStringInspector extends JavaStringObjectInspector implements
       return new Text((String) o);
     }
 
+    if ((o instanceof TimestampWritable) || (o instanceof HiveDecimalWritable)
+        || (o instanceof DoubleWritable) || (o instanceof FloatWritable)
+        || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      return new Text(o.toString());
+    }
+
     throw new UnsupportedOperationException("Cannot inspect " + o.getClass().getCanonicalName());
   }
 
@@ -74,6 +90,13 @@ public class ParquetStringInspector extends JavaStringObjectInspector implements
       return (String) o;
     }
 
+    if ((o instanceof TimestampWritable) || (o instanceof HiveDecimalWritable)
+        || (o instanceof DoubleWritable) || (o instanceof FloatWritable)
+        || (o instanceof LongWritable) || (o instanceof IntWritable)
+        || (o instanceof BooleanWritable)) {
+      return (String) o.toString();
+    }
+
     throw new UnsupportedOperationException("Cannot inspect " + o.getClass().getCanonicalName());
   }
 

http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/ql/src/test/queries/clientpositive/typechangetest.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/typechangetest.q b/ql/src/test/queries/clientpositive/typechangetest.q
new file mode 100644
index 0000000..314fc8b
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/typechangetest.q
@@ -0,0 +1,569 @@
+
+-- Create a base table to be used for loading data: Begin
+drop table if exists testAltCol;
+create table testAltCol
+(cId        TINYINT,
+ cTimeStamp TIMESTAMP,
+ cDecimal   DECIMAL(38,18),
+ cDouble    DOUBLE,
+ cFloat     FLOAT,
+ cBigInt    BIGINT,
+ cInt       INT,
+ cSmallInt  SMALLINT,
+ cTinyint   TINYINT,
+ cBoolean   BOOLEAN);
+
+insert into testAltCol values
+(1,
+ '2017-11-07 09:02:49.999999999',
+ 12345678901234567890.123456789012345678,
+ 1.79e308,
+ 3.4e38,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE);
+
+insert into testAltCol values
+(2,
+ '1400-01-01 01:01:01.000000001',
+ 1.1,
+ 2.2,
+ 3.3,
+ 1,
+ 2,
+ 3,
+ 4,
+ FALSE);
+
+insert into testAltCol values
+(3,
+ '1400-01-01 01:01:01.000000001',
+ 10.1,
+ 20.2,
+ 30.3,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE);
+
+insert into testAltCol values
+(4,
+ '1400-01-01 01:01:01.000000001',
+ -10.1,
+ -20.2,
+ -30.3,
+ -1234567890123456789,
+ -1234567890,
+ -12345,
+ -123,
+ FALSE);
+
+select cId, cTimeStamp from testAltCol order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltCol order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltCol order by cId;
+select cId, cBoolean from testAltCol order by cId;
+-- Create a base table to be used for loading data: Begin
+
+-- Enable change of column type
+SET hive.metastore.disallow.incompatible.col.type.changes=false;
+
+-- Text type: Begin
+-- timestamp, decimal, double, float, bigint, int, smallint, tinyint and boolean: after type
+-- changed to string, varchar and char return correct data.
+drop table if exists testAltColT;
+
+create table testAltColT stored as textfile as select * from testAltCol;
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+
+alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING);
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+
+alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100));
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+
+alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100));
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+
+alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4));
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+
+alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4));
+
+select cId, cTimeStamp from testAltColT order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColT order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId;
+select cId, cBoolean from testAltColT order by cId;
+drop table if exists testAltColT;
+-- Text type: End
+
+-- Sequence File type: Begin
+-- timestamp, decimal, double, float, bigint, int, smallint, tinyint and boolean: after type
+-- changed to string, varchar and char return correct data.
+drop table if exists testAltColSF;
+
+create table testAltColSF stored as sequencefile as select * from testAltCol;
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING);
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100));
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100));
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4));
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4));
+
+select cId, cTimeStamp from testAltColSF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId;
+select cId, cBoolean from testAltColSF order by cId;
+
+drop table if exists testAltColSF;
+-- Sequence File type: End
+
+-- ORC type: Begin
+-- timestamp, decimal, double, float, bigint, int, smallint, tinyint and boolean: after type
+-- changed to string, varchar and char return correct data.
+drop table if exists testAltColORC;
+
+create table testAltColORC stored as orc as select * from testAltCol;
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING);
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100));
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100));
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4));
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4));
+
+select cId, cTimeStamp from testAltColORC order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId;
+select cId, cBoolean from testAltColORC order by cId;
+
+drop table if exists testAltColORC;
+-- ORC type: End
+
+-- RCFile type: Begin
+-- timestamp, decimal, double, float, bigint, int, smallint, tinyint and boolean: after type
+-- changed to string, varchar and char return correct data.
+drop table if exists testAltColRCF;
+
+create table testAltColRCF stored as rcfile as select * from testAltCol;
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING);
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100));
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100));
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4));
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4));
+
+select cId, cTimeStamp from testAltColRCF order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId;
+select cId, cBoolean from testAltColRCF order by cId;
+
+drop table if exists testAltColRCF;
+-- RCFile type: End
+
+-- Parquet type: Begin
+drop table if exists testAltColP;
+create table testAltColP stored as parquet as select * from testAltCol;
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+alter table testAltColP replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING);
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+alter table testAltColP replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100));
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+alter table testAltColP replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100));
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+alter table testAltColP replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4));
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+alter table testAltColP replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4));
+
+select cId, cTimeStamp from testAltColP order by cId;
+select cId, cDecimal, cDouble, cFloat from testAltColP order by cId;
+select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColP order by cId;
+select cId, cBoolean from testAltColP order by cId;
+
+drop table if exists testAltColP;
+-- Parquet type: End
+
+drop table if exists testAltCol;
\ No newline at end of file


[2/3] hive git commit: HIVE-18393 : Error returned when some other type is read as string from parquet tables (Janaki Lahorani via Vihang Karajgaonkar)

Posted by vi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/ql/src/test/results/clientpositive/typechangetest.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/typechangetest.q.out b/ql/src/test/results/clientpositive/typechangetest.q.out
new file mode 100644
index 0000000..2c56b78
--- /dev/null
+++ b/ql/src/test/results/clientpositive/typechangetest.q.out
@@ -0,0 +1,2540 @@
+PREHOOK: query: drop table if exists testAltCol
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists testAltCol
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table testAltCol
+(cId        TINYINT,
+ cTimeStamp TIMESTAMP,
+ cDecimal   DECIMAL(38,18),
+ cDouble    DOUBLE,
+ cFloat     FLOAT,
+ cBigInt    BIGINT,
+ cInt       INT,
+ cSmallInt  SMALLINT,
+ cTinyint   TINYINT,
+ cBoolean   BOOLEAN)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:default
+PREHOOK: Output: default@testAltCol
+POSTHOOK: query: create table testAltCol
+(cId        TINYINT,
+ cTimeStamp TIMESTAMP,
+ cDecimal   DECIMAL(38,18),
+ cDouble    DOUBLE,
+ cFloat     FLOAT,
+ cBigInt    BIGINT,
+ cInt       INT,
+ cSmallInt  SMALLINT,
+ cTinyint   TINYINT,
+ cBoolean   BOOLEAN)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@testAltCol
+PREHOOK: query: insert into testAltCol values
+(1,
+ '2017-11-07 09:02:49.999999999',
+ 12345678901234567890.123456789012345678,
+ 1.79e308,
+ 3.4e38,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE)
+PREHOOK: type: QUERY
+PREHOOK: Input: _dummy_database@_dummy_table
+PREHOOK: Output: default@testaltcol
+POSTHOOK: query: insert into testAltCol values
+(1,
+ '2017-11-07 09:02:49.999999999',
+ 12345678901234567890.123456789012345678,
+ 1.79e308,
+ 3.4e38,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: _dummy_database@_dummy_table
+POSTHOOK: Output: default@testaltcol
+POSTHOOK: Lineage: testaltcol.cbigint SCRIPT []
+POSTHOOK: Lineage: testaltcol.cboolean SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdecimal SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdouble SCRIPT []
+POSTHOOK: Lineage: testaltcol.cfloat SCRIPT []
+POSTHOOK: Lineage: testaltcol.cid SCRIPT []
+POSTHOOK: Lineage: testaltcol.cint SCRIPT []
+POSTHOOK: Lineage: testaltcol.csmallint SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctimestamp SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctinyint SCRIPT []
+PREHOOK: query: insert into testAltCol values
+(2,
+ '1400-01-01 01:01:01.000000001',
+ 1.1,
+ 2.2,
+ 3.3,
+ 1,
+ 2,
+ 3,
+ 4,
+ FALSE)
+PREHOOK: type: QUERY
+PREHOOK: Input: _dummy_database@_dummy_table
+PREHOOK: Output: default@testaltcol
+POSTHOOK: query: insert into testAltCol values
+(2,
+ '1400-01-01 01:01:01.000000001',
+ 1.1,
+ 2.2,
+ 3.3,
+ 1,
+ 2,
+ 3,
+ 4,
+ FALSE)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: _dummy_database@_dummy_table
+POSTHOOK: Output: default@testaltcol
+POSTHOOK: Lineage: testaltcol.cbigint SCRIPT []
+POSTHOOK: Lineage: testaltcol.cboolean SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdecimal SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdouble SCRIPT []
+POSTHOOK: Lineage: testaltcol.cfloat SCRIPT []
+POSTHOOK: Lineage: testaltcol.cid SCRIPT []
+POSTHOOK: Lineage: testaltcol.cint SCRIPT []
+POSTHOOK: Lineage: testaltcol.csmallint SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctimestamp SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctinyint SCRIPT []
+PREHOOK: query: insert into testAltCol values
+(3,
+ '1400-01-01 01:01:01.000000001',
+ 10.1,
+ 20.2,
+ 30.3,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE)
+PREHOOK: type: QUERY
+PREHOOK: Input: _dummy_database@_dummy_table
+PREHOOK: Output: default@testaltcol
+POSTHOOK: query: insert into testAltCol values
+(3,
+ '1400-01-01 01:01:01.000000001',
+ 10.1,
+ 20.2,
+ 30.3,
+ 1234567890123456789,
+ 1234567890,
+ 12345,
+ 123,
+ TRUE)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: _dummy_database@_dummy_table
+POSTHOOK: Output: default@testaltcol
+POSTHOOK: Lineage: testaltcol.cbigint SCRIPT []
+POSTHOOK: Lineage: testaltcol.cboolean SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdecimal SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdouble SCRIPT []
+POSTHOOK: Lineage: testaltcol.cfloat SCRIPT []
+POSTHOOK: Lineage: testaltcol.cid SCRIPT []
+POSTHOOK: Lineage: testaltcol.cint SCRIPT []
+POSTHOOK: Lineage: testaltcol.csmallint SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctimestamp SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctinyint SCRIPT []
+PREHOOK: query: insert into testAltCol values
+(4,
+ '1400-01-01 01:01:01.000000001',
+ -10.1,
+ -20.2,
+ -30.3,
+ -1234567890123456789,
+ -1234567890,
+ -12345,
+ -123,
+ FALSE)
+PREHOOK: type: QUERY
+PREHOOK: Input: _dummy_database@_dummy_table
+PREHOOK: Output: default@testaltcol
+POSTHOOK: query: insert into testAltCol values
+(4,
+ '1400-01-01 01:01:01.000000001',
+ -10.1,
+ -20.2,
+ -30.3,
+ -1234567890123456789,
+ -1234567890,
+ -12345,
+ -123,
+ FALSE)
+POSTHOOK: type: QUERY
+POSTHOOK: Input: _dummy_database@_dummy_table
+POSTHOOK: Output: default@testaltcol
+POSTHOOK: Lineage: testaltcol.cbigint SCRIPT []
+POSTHOOK: Lineage: testaltcol.cboolean SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdecimal SCRIPT []
+POSTHOOK: Lineage: testaltcol.cdouble SCRIPT []
+POSTHOOK: Lineage: testaltcol.cfloat SCRIPT []
+POSTHOOK: Lineage: testaltcol.cid SCRIPT []
+POSTHOOK: Lineage: testaltcol.cint SCRIPT []
+POSTHOOK: Lineage: testaltcol.csmallint SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctimestamp SCRIPT []
+POSTHOOK: Lineage: testaltcol.ctinyint SCRIPT []
+PREHOOK: query: select cId, cTimeStamp from testAltCol order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltCol order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltCol order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltCol order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltCol order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltCol order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltCol order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltCol order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcol
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: drop table if exists testAltColT
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists testAltColT
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table testAltColT stored as textfile as select * from testAltCol
+PREHOOK: type: CREATETABLE_AS_SELECT
+PREHOOK: Input: default@testaltcol
+PREHOOK: Output: database:default
+PREHOOK: Output: default@testAltColT
+POSTHOOK: query: create table testAltColT stored as textfile as select * from testAltCol
+POSTHOOK: type: CREATETABLE_AS_SELECT
+POSTHOOK: Input: default@testaltcol
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@testAltColT
+POSTHOOK: Lineage: testaltcolt.cbigint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cbigint, type:bigint, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cboolean SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cboolean, type:boolean, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cdecimal SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdecimal, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cdouble SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdouble, type:double, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cfloat SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cfloat, type:float, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cid SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cid, type:tinyint, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.cint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cint, type:int, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.csmallint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:csmallint, type:smallint, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.ctimestamp SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctimestamp, type:timestamp, comment:null), ]
+POSTHOOK: Lineage: testaltcolt.ctinyint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctinyint, type:tinyint, comment:null), ]
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999                                                                       
+2	1400-01-01 01:01:01.000000001                                                                       
+3	1400-01-01 01:01:01.000000001                                                                       
+4	1400-01-01 01:01:01.000000001                                                                       
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678                                                             	1.79E308                                                                                            	3.4E38                                                                                              
+2	1.100000000000000000                                                                                	2.2                                                                                                 	3.3                                                                                                 
+3	10.100000000000000000                                                                               	20.2                                                                                                	30.3                                                                                                
+4	-10.100000000000000000                                                                              	-20.2                                                                                               	-30.3                                                                                               
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+2	1                                                                                                   	2                                                                                                   	3                                                                                                   	4                                                                                                   
+3	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+4	-1234567890123456789                                                                                	-1234567890                                                                                         	-12345                                                                                              	-123                                                                                                
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true                                                                                                
+2	false                                                                                               
+3	true                                                                                                
+4	false                                                                                               
+PREHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234	1234	1234	123
+2	1	2	3	4
+3	1234	1234	1234	123
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: alter table testAltColT replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2 	3.3 
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	1234	1234	1234	123 
+2	1   	2   	3   	4   
+3	1234	1234	1234	123 
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColT order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColT order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolt
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: drop table if exists testAltColT
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@testaltcolt
+PREHOOK: Output: default@testaltcolt
+POSTHOOK: query: drop table if exists testAltColT
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@testaltcolt
+POSTHOOK: Output: default@testaltcolt
+PREHOOK: query: drop table if exists testAltColSF
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists testAltColSF
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table testAltColSF stored as sequencefile as select * from testAltCol
+PREHOOK: type: CREATETABLE_AS_SELECT
+PREHOOK: Input: default@testaltcol
+PREHOOK: Output: database:default
+PREHOOK: Output: default@testAltColSF
+POSTHOOK: query: create table testAltColSF stored as sequencefile as select * from testAltCol
+POSTHOOK: type: CREATETABLE_AS_SELECT
+POSTHOOK: Input: default@testaltcol
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@testAltColSF
+POSTHOOK: Lineage: testaltcolsf.cbigint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cbigint, type:bigint, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cboolean SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cboolean, type:boolean, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cdecimal SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdecimal, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cdouble SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdouble, type:double, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cfloat SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cfloat, type:float, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cid SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cid, type:tinyint, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.cint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cint, type:int, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.csmallint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:csmallint, type:smallint, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.ctimestamp SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctimestamp, type:timestamp, comment:null), ]
+POSTHOOK: Lineage: testaltcolsf.ctinyint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctinyint, type:tinyint, comment:null), ]
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999                                                                       
+2	1400-01-01 01:01:01.000000001                                                                       
+3	1400-01-01 01:01:01.000000001                                                                       
+4	1400-01-01 01:01:01.000000001                                                                       
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678                                                             	1.79E308                                                                                            	3.4E38                                                                                              
+2	1.100000000000000000                                                                                	2.2                                                                                                 	3.3                                                                                                 
+3	10.100000000000000000                                                                               	20.2                                                                                                	30.3                                                                                                
+4	-10.100000000000000000                                                                              	-20.2                                                                                               	-30.3                                                                                               
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+2	1                                                                                                   	2                                                                                                   	3                                                                                                   	4                                                                                                   
+3	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+4	-1234567890123456789                                                                                	-1234567890                                                                                         	-12345                                                                                              	-123                                                                                                
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true                                                                                                
+2	false                                                                                               
+3	true                                                                                                
+4	false                                                                                               
+PREHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234	1234	1234	123
+2	1	2	3	4
+3	1234	1234	1234	123
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: alter table testAltColSF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2 	3.3 
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	1234	1234	1234	123 
+2	1   	2   	3   	4   
+3	1234	1234	1234	123 
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColSF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColSF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolsf
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: drop table if exists testAltColSF
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@testaltcolsf
+PREHOOK: Output: default@testaltcolsf
+POSTHOOK: query: drop table if exists testAltColSF
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@testaltcolsf
+POSTHOOK: Output: default@testaltcolsf
+PREHOOK: query: drop table if exists testAltColORC
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists testAltColORC
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table testAltColORC stored as orc as select * from testAltCol
+PREHOOK: type: CREATETABLE_AS_SELECT
+PREHOOK: Input: default@testaltcol
+PREHOOK: Output: database:default
+PREHOOK: Output: default@testAltColORC
+POSTHOOK: query: create table testAltColORC stored as orc as select * from testAltCol
+POSTHOOK: type: CREATETABLE_AS_SELECT
+POSTHOOK: Input: default@testaltcol
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@testAltColORC
+POSTHOOK: Lineage: testaltcolorc.cbigint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cbigint, type:bigint, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cboolean SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cboolean, type:boolean, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cdecimal SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdecimal, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cdouble SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdouble, type:double, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cfloat SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cfloat, type:float, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cid SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cid, type:tinyint, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.cint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cint, type:int, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.csmallint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:csmallint, type:smallint, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.ctimestamp SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctimestamp, type:timestamp, comment:null), ]
+POSTHOOK: Lineage: testaltcolorc.ctinyint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctinyint, type:tinyint, comment:null), ]
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:00.000000001
+3	1400-01-01 01:01:00.000000001
+4	1400-01-01 01:01:00.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:00.000000001
+3	1400-01-01 01:01:00.000000001
+4	1400-01-01 01:01:00.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.1	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.1	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	TRUE
+2	FALSE
+3	TRUE
+4	FALSE
+PREHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:00.000000001
+3	1400-01-01 01:01:00.000000001
+4	1400-01-01 01:01:00.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.1	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.1	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	TRUE
+2	FALSE
+3	TRUE
+4	FALSE
+PREHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999                                                                       
+2	1400-01-01 01:01:00.000000001                                                                       
+3	1400-01-01 01:01:00.000000001                                                                       
+4	1400-01-01 01:01:00.000000001                                                                       
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678                                                             	1.79E308                                                                                            	3.4E38                                                                                              
+2	1.1                                                                                                 	2.2                                                                                                 	3.3                                                                                                 
+3	10.1                                                                                                	20.2                                                                                                	30.3                                                                                                
+4	-10.1                                                                                               	-20.2                                                                                               	-30.3                                                                                               
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+2	1                                                                                                   	2                                                                                                   	3                                                                                                   	4                                                                                                   
+3	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+4	-1234567890123456789                                                                                	-1234567890                                                                                         	-12345                                                                                              	-123                                                                                                
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	TRUE                                                                                                
+2	FALSE                                                                                               
+3	TRUE                                                                                                
+4	FALSE                                                                                               
+PREHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.1	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234	1234	1234	123
+2	1	2	3	4
+3	1234	1234	1234	123
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	TRUE
+2	FALS
+3	TRUE
+4	FALS
+PREHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: alter table testAltColORC replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.1 	2.2 	3.3 
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	1234	1234	1234	123 
+2	1   	2   	3   	4   
+3	1234	1234	1234	123 
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColORC order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColORC order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolorc
+#### A masked pattern was here ####
+1	TRUE
+2	FALS
+3	TRUE
+4	FALS
+PREHOOK: query: drop table if exists testAltColORC
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@testaltcolorc
+PREHOOK: Output: default@testaltcolorc
+POSTHOOK: query: drop table if exists testAltColORC
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@testaltcolorc
+POSTHOOK: Output: default@testaltcolorc
+PREHOOK: query: drop table if exists testAltColRCF
+PREHOOK: type: DROPTABLE
+POSTHOOK: query: drop table if exists testAltColRCF
+POSTHOOK: type: DROPTABLE
+PREHOOK: query: create table testAltColRCF stored as rcfile as select * from testAltCol
+PREHOOK: type: CREATETABLE_AS_SELECT
+PREHOOK: Input: default@testaltcol
+PREHOOK: Output: database:default
+PREHOOK: Output: default@testAltColRCF
+POSTHOOK: query: create table testAltColRCF stored as rcfile as select * from testAltCol
+POSTHOOK: type: CREATETABLE_AS_SELECT
+POSTHOOK: Input: default@testaltcol
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@testAltColRCF
+POSTHOOK: Lineage: testaltcolrcf.cbigint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cbigint, type:bigint, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cboolean SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cboolean, type:boolean, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cdecimal SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdecimal, type:decimal(38,18), comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cdouble SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cdouble, type:double, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cfloat SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cfloat, type:float, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cid SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cid, type:tinyint, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.cint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:cint, type:int, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.csmallint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:csmallint, type:smallint, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.ctimestamp SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctimestamp, type:timestamp, comment:null), ]
+POSTHOOK: Lineage: testaltcolrcf.ctinyint SIMPLE [(testaltcol)testaltcol.FieldSchema(name:ctinyint, type:tinyint, comment:null), ]
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp STRING,
+ cDecimal   STRING,
+ cDouble    STRING,
+ cFloat     STRING,
+ cBigInt    STRING,
+ cInt       STRING,
+ cSmallInt  STRING,
+ cTinyint   STRING,
+ cBoolean   STRING)
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(100),
+ cDecimal   VARCHAR(100),
+ cDouble    VARCHAR(100),
+ cFloat     VARCHAR(100),
+ cBigInt    VARCHAR(100),
+ cInt       VARCHAR(100),
+ cSmallInt  VARCHAR(100),
+ cTinyint   VARCHAR(100),
+ cBoolean   VARCHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999
+2	1400-01-01 01:01:01.000000001
+3	1400-01-01 01:01:01.000000001
+4	1400-01-01 01:01:01.000000001
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678	1.79E308	3.4E38
+2	1.100000000000000000	2.2	3.3
+3	10.100000000000000000	20.2	30.3
+4	-10.100000000000000000	-20.2	-30.3
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234567890123456789	1234567890	12345	123
+2	1	2	3	4
+3	1234567890123456789	1234567890	12345	123
+4	-1234567890123456789	-1234567890	-12345	-123
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true
+2	false
+3	true
+4	false
+PREHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(100),
+ cDecimal   CHAR(100),
+ cDouble    CHAR(100),
+ cFloat     CHAR(100),
+ cBigInt    CHAR(100),
+ cInt       CHAR(100),
+ cSmallInt  CHAR(100),
+ cTinyint   CHAR(100),
+ cBoolean   CHAR(100))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017-11-07 09:02:49.999999999                                                                       
+2	1400-01-01 01:01:01.000000001                                                                       
+3	1400-01-01 01:01:01.000000001                                                                       
+4	1400-01-01 01:01:01.000000001                                                                       
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	12345678901234567890.123456789012345678                                                             	1.79E308                                                                                            	3.4E38                                                                                              
+2	1.100000000000000000                                                                                	2.2                                                                                                 	3.3                                                                                                 
+3	10.100000000000000000                                                                               	20.2                                                                                                	30.3                                                                                                
+4	-10.100000000000000000                                                                              	-20.2                                                                                               	-30.3                                                                                               
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+2	1                                                                                                   	2                                                                                                   	3                                                                                                   	4                                                                                                   
+3	1234567890123456789                                                                                 	1234567890                                                                                          	12345                                                                                               	123                                                                                                 
+4	-1234567890123456789                                                                                	-1234567890                                                                                         	-12345                                                                                              	-123                                                                                                
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true                                                                                                
+2	false                                                                                               
+3	true                                                                                                
+4	false                                                                                               
+PREHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp VARCHAR(4),
+ cDecimal   VARCHAR(4),
+ cDouble    VARCHAR(4),
+ cFloat     VARCHAR(4),
+ cBigInt    VARCHAR(4),
+ cInt       VARCHAR(4),
+ cSmallInt  VARCHAR(4),
+ cTinyint   VARCHAR(4),
+ cBoolean   VARCHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2	3.3
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234	1234	1234	123
+2	1	2	3	4
+3	1234	1234	1234	123
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+PREHOOK: type: ALTERTABLE_REPLACECOLS
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: alter table testAltColRCF replace columns
+(cId        TINYINT,
+ cTimeStamp CHAR(4),
+ cDecimal   CHAR(4),
+ cDouble    CHAR(4),
+ cFloat     CHAR(4),
+ cBigInt    CHAR(4),
+ cInt       CHAR(4),
+ cSmallInt  CHAR(4),
+ cTinyint   CHAR(4),
+ cBoolean   CHAR(4))
+POSTHOOK: type: ALTERTABLE_REPLACECOLS
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cTimeStamp from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	2017
+2	1400
+3	1400
+4	1400
+PREHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cDecimal, cDouble, cFloat from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234	1.79	3.4E
+2	1.10	2.2 	3.3 
+3	10.1	20.2	30.3
+4	-10.	-20.	-30.
+PREHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBigInt, cInt, cSmallInt, cTinyint from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	1234	1234	1234	123 
+2	1   	2   	3   	4   
+3	1234	1234	1234	123 
+4	-123	-123	-123	-123
+PREHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+PREHOOK: type: QUERY
+PREHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+POSTHOOK: query: select cId, cBoolean from testAltColRCF order by cId
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@testaltcolrcf
+#### A masked pattern was here ####
+1	true
+2	fals
+3	true
+4	fals
+PREHOOK: query: drop table if exists testAltColRCF
+PREHOOK: type: DROPTABLE
+PREHOOK: Input: default@testaltcolrcf
+PREHOOK: Output: default@testaltcolrcf
+POSTHOOK: query: drop table if exists testAltColRCF
+POSTHOOK: type: DROPTABLE
+POSTHOOK: Input: default@testaltcolrcf
+POSTHOOK: Output: default@testaltcolrcf
+PREHOOK: query: drop table i

<TRUNCATED>