Repository: hive
Updated Branches:
  refs/heads/branch-2.1 7a41e7ccf -> 2bd2e9a09


HIVE-13338: Differences in vectorized_casts.q output for vectorized and 
non-vectorized runs (Matt McCline, reviewed by Prasanth Jayachandran)


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

Branch: refs/heads/branch-2.1
Commit: 2bd2e9a091a81751c4c2d5392538a2763fe754a2
Parents: 7a41e7c
Author: Matt McCline <mmccl...@hortonworks.com>
Authored: Fri May 27 18:13:46 2016 -0700
Committer: Matt McCline <mmccl...@hortonworks.com>
Committed: Fri May 27 18:13:46 2016 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hive/ant/GenVectorCode.java   |  1 +
 .../ql/exec/vector/VectorizationContext.java    |  7 ++++++-
 .../apache/hadoop/hive/ql/udf/UDFToFloat.java   |  4 ++--
 .../clientpositive/tez/vectorized_casts.q.out   | 20 ++++++++++----------
 .../clientpositive/vectorized_casts.q.out       | 20 ++++++++++----------
 5 files changed, 29 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/2bd2e9a0/ant/src/org/apache/hadoop/hive/ant/GenVectorCode.java
----------------------------------------------------------------------
diff --git a/ant/src/org/apache/hadoop/hive/ant/GenVectorCode.java 
b/ant/src/org/apache/hadoop/hive/ant/GenVectorCode.java
index 6c6cc63..e9fe8fa 100644
--- a/ant/src/org/apache/hadoop/hive/ant/GenVectorCode.java
+++ b/ant/src/org/apache/hadoop/hive/ant/GenVectorCode.java
@@ -933,6 +933,7 @@ public class GenVectorCode extends Task {
       // Casts
       {"ColumnUnaryFunc", "Cast", "long", "double", "", "", "(long)", "", ""},
       {"ColumnUnaryFunc", "Cast", "double", "long", "", "", "(double)", "", 
""},
+      {"ColumnUnaryFunc", "CastLongToFloatVia", "double", "long", "", "", 
"(float)", "", ""},
       {"ColumnUnaryFunc", "CastDoubleToBooleanVia", "long", "double", 
"MathExpr.toBool", "",
         "", "", ""},
       {"ColumnUnaryFunc", "CastLongToBooleanVia", "long", "long", 
"MathExpr.toBool", "",

http://git-wip-us.apache.org/repos/asf/hive/blob/2bd2e9a0/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
----------------------------------------------------------------------
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java 
b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
index a76e31d..7f55b31 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java
@@ -1803,7 +1803,12 @@ public class VectorizationContext {
         return getConstantVectorExpression(doubleValue, returnType, 
Mode.PROJECTION);
     }
     if (isIntFamily(inputType)) {
-      return createVectorExpression(CastLongToDouble.class, childExpr, 
Mode.PROJECTION, returnType);
+      if (udf.equals(UDFToFloat.class)) {
+        // In order to convert from integer to float correctly, we need to 
apply the float cast not the double cast (HIVE-13338).
+        return createVectorExpression(CastLongToFloatViaLongToDouble.class, 
childExpr, Mode.PROJECTION, returnType);
+      } else {
+        return createVectorExpression(CastLongToDouble.class, childExpr, 
Mode.PROJECTION, returnType);
+      }
     } else if (inputType.equals("timestamp")) {
       return createVectorExpression(CastTimestampToDouble.class, childExpr, 
Mode.PROJECTION,
           returnType);

http://git-wip-us.apache.org/repos/asf/hive/blob/2bd2e9a0/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java 
b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java
index c612307..5808c90 100755
--- a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java
@@ -21,7 +21,7 @@ package org.apache.hadoop.hive.ql.udf;
 import org.apache.hadoop.hive.ql.exec.UDF;
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedExpressions;
 import org.apache.hadoop.hive.ql.exec.vector.expressions.CastDecimalToDouble;
-import org.apache.hadoop.hive.ql.exec.vector.expressions.gen.CastLongToDouble;
+import 
org.apache.hadoop.hive.ql.exec.vector.expressions.gen.CastLongToFloatViaLongToDouble;
 import org.apache.hadoop.hive.ql.exec.vector.expressions.CastTimestampToDouble;
 import org.apache.hadoop.hive.serde2.io.ByteWritable;
 import org.apache.hadoop.hive.serde2.io.DoubleWritable;
@@ -40,7 +40,7 @@ import org.apache.hadoop.io.Text;
  * UDFToFloat.
  *
  */
-@VectorizedExpressions({CastTimestampToDouble.class, CastLongToDouble.class,
+@VectorizedExpressions({CastTimestampToDouble.class, 
CastLongToFloatViaLongToDouble.class,
     CastDecimalToDouble.class})
 public class UDFToFloat extends UDF {
   private final FloatWritable floatWritable = new FloatWritable();

http://git-wip-us.apache.org/repos/asf/hive/blob/2bd2e9a0/ql/src/test/results/clientpositive/tez/vectorized_casts.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/tez/vectorized_casts.q.out 
b/ql/src/test/results/clientpositive/tez/vectorized_casts.q.out
index cf6f4c7..231cdba 100644
--- a/ql/src/test/results/clientpositive/tez/vectorized_casts.q.out
+++ b/ql/src/test/results/clientpositive/tez/vectorized_casts.q.out
@@ -342,16 +342,16 @@ where cbigint % 250 = 0
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
-true   NULL    true    true    true    NULL    false   false   true    true    
-51     NULL    773600971       1053923250      -51     NULL    0       8       
NULL    2       -51     -51     -51     -51.0   NULL    7.73600971E8    
1.05392325E9    -51.0   NULL    0.0     8.451   NULL    2.0     7.7360096E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 14:53:20.971 1970-01-12 
20:45:23.25  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    773600971  
     1053923250      -51.0   NULL    FALSE   0       1969-12-31 16:00:08.451 
2yK4Bx76O       2yK4Bx76O       2yK4Bx76O       -51.0   1.547201942E9   
-0.6702291758433747     7.73600971E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -102936434      -1312782750     8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -1.02936434E8   
-1.31278275E9   8.0     NULL    0.0     15.892  NULL    NULL    -1.02936432E8   
NULL    1969-12-31 16:00:00.008 NULL    1969-12-30 11:24:23.566 1969-12-16 
11:20:17.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -102936434 
     -1312782750     8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
eJROSNhugc3kQR7Pb       eJROSNhugc      eJROSNhugc      8.0     -2.05872868E8   
0.9893582466233818      -1.02936434E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -661621138      -931392750      8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -6.61621138E8   
-9.3139275E8    8.0     NULL    0.0     15.892  NULL    NULL    -6.6162112E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-24 00:12:58.862 1969-12-20 
21:16:47.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -661621138 
     -931392750      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
L15l8i5k558tBcDV20      L15l8i5k55      L15l8i5k55      8.0     -1.323242276E9  
0.9893582466233818      -6.61621138E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -669632311      1588591250      8       NULL    0       15      
NULL    3       8       8       8       8.0     NULL    -6.69632311E8   
1.58859125E9    8.0     NULL    0.0     15.892  NULL    3.0     -6.6963232E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-23 21:59:27.689 1970-01-19 
01:16:31.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -669632311 
     1588591250      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
3r3sDvfUkG0yTP3LnX5mNQRr        3r3sDvfUkG      3r3sDvfUkG      8.0     
-1.339264622E9  0.9893582466233818      -6.69632311E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    805179664       868161500       8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    8.05179664E8    
8.681615E8      8.0     NULL    0.0     15.892  NULL    NULL    8.0517965E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-09 23:39:39.664 1970-01-10 
17:09:21.5   1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    805179664  
     868161500       8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
e005B5q e005B5q e005B5q 8.0     1.610359328E9   0.9893582466233818      
8.05179664E8
-true   NULL    true    true    true    NULL    true    false   true    true    
-51     NULL    747553882       -1930467250     -51     NULL    1       8       
NULL    NULL    -51     -51     -51     -51.0   NULL    7.47553882E8    
-1.93046725E9   -51.0   NULL    1.0     8.451   NULL    NULL    7.4755386E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 07:39:13.882 1969-12-09 
07:45:32.75  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    747553882  
     -1930467250     -51.0   NULL    TRUE    0       1969-12-31 16:00:08.451 
q8M86Fx0r       q8M86Fx0r       q8M86Fx0r       -51.0   1.495107764E9   
-0.6702291758433747     7.47553883E8
-true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -335450417      1233327000      11      NULL    1       2       
NULL    NULL    11      11      11      11.0    NULL    -3.35450417E8   
1.233327E9      11.0    NULL    1.0     2.351   NULL    NULL    -3.35450432E8   
NULL    1969-12-31 16:00:00.011 NULL    1969-12-27 18:49:09.583 1970-01-14 
22:35:27     1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -335450417 
     1233327000      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
dOYnqgaXoJ1P3ERwxe5N7   dOYnqgaXoJ      dOYnqgaXoJ      11.0    -6.70900834E8   
-0.9999902065507035     -3.35450416E8
-true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -64615982       1803053750      11      NULL    1       2       
NULL    8       11      11      11      11.0    NULL    -6.4615982E7    
1.80305375E9    11.0    NULL    1.0     2.351   NULL    8.0     -6.4615984E7    
NULL    1969-12-31 16:00:00.011 NULL    1969-12-30 22:03:04.018 1970-01-21 
12:50:53.75  1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -64615982  
     1803053750      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
8J5OB7K26PEV7kdbeHr3    8J5OB7K26P      8J5OB7K26P      11.0    -1.29231964E8   
-0.9999902065507035     -6.4615981E7
-true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    890988972       -1862301000     8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    8.90988972E8    
-1.862301E9     8.0     NULL    1.0     15.892  NULL    NULL    8.9098899E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-10 23:29:48.972 1969-12-10 
02:41:39     1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    890988972  
     -1862301000     8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
XylAH4  XylAH4  XylAH4  8.0     1.781977944E9   0.9893582466233818      
8.90988973E8
-true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    930867246       1205399250      8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    9.30867246E8    
1.20539925E9    8.0     NULL    1.0     15.892  NULL    NULL    9.3086726E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-11 10:34:27.246 1970-01-14 
14:49:59.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    930867246  
     1205399250      8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
c1V8o1A c1V8o1A c1V8o1A 8.0     1.861734492E9   0.9893582466233818      
9.30867247E8
+true   NULL    true    true    true    NULL    false   false   true    true    
-51     NULL    773600971       1053923250      -51     NULL    0       8       
NULL    2       -51     -51     -51     -51.0   NULL    7.73600971E8    
1.05392325E9    -51.0   NULL    0.0     8.451   NULL    2.0     7.7360096E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 14:53:20.971 1970-01-12 
20:45:23.25  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    773600971  
     1053923250      -51.0   NULL    FALSE   0       1969-12-31 16:00:08.451 
2yK4Bx76O       2yK4Bx76O       2yK4Bx76O       -51.0   1.547201942E9   
-0.6702291758433747     7.7360096E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -102936434      -1312782750     8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -1.02936434E8   
-1.31278275E9   8.0     NULL    0.0     15.892  NULL    NULL    -1.02936432E8   
NULL    1969-12-31 16:00:00.008 NULL    1969-12-30 11:24:23.566 1969-12-16 
11:20:17.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -102936434 
     -1312782750     8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
eJROSNhugc3kQR7Pb       eJROSNhugc      eJROSNhugc      8.0     -2.05872868E8   
0.9893582466233818      -1.02936432E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -661621138      -931392750      8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -6.61621138E8   
-9.3139275E8    8.0     NULL    0.0     15.892  NULL    NULL    -6.6162112E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-24 00:12:58.862 1969-12-20 
21:16:47.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -661621138 
     -931392750      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
L15l8i5k558tBcDV20      L15l8i5k55      L15l8i5k55      8.0     -1.323242276E9  
0.9893582466233818      -6.6162112E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -669632311      1588591250      8       NULL    0       15      
NULL    3       8       8       8       8.0     NULL    -6.69632311E8   
1.58859125E9    8.0     NULL    0.0     15.892  NULL    3.0     -6.6963232E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-23 21:59:27.689 1970-01-19 
01:16:31.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -669632311 
     1588591250      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
3r3sDvfUkG0yTP3LnX5mNQRr        3r3sDvfUkG      3r3sDvfUkG      8.0     
-1.339264622E9  0.9893582466233818      -6.6963232E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    805179664       868161500       8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    8.05179664E8    
8.681615E8      8.0     NULL    0.0     15.892  NULL    NULL    8.0517965E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-09 23:39:39.664 1970-01-10 
17:09:21.5   1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    805179664  
     868161500       8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
e005B5q e005B5q e005B5q 8.0     1.610359328E9   0.9893582466233818      
8.05179648E8
+true   NULL    true    true    true    NULL    true    false   true    true    
-51     NULL    747553882       -1930467250     -51     NULL    1       8       
NULL    NULL    -51     -51     -51     -51.0   NULL    7.47553882E8    
-1.93046725E9   -51.0   NULL    1.0     8.451   NULL    NULL    7.4755386E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 07:39:13.882 1969-12-09 
07:45:32.75  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    747553882  
     -1930467250     -51.0   NULL    TRUE    0       1969-12-31 16:00:08.451 
q8M86Fx0r       q8M86Fx0r       q8M86Fx0r       -51.0   1.495107764E9   
-0.6702291758433747     7.47553857E8
+true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -335450417      1233327000      11      NULL    1       2       
NULL    NULL    11      11      11      11.0    NULL    -3.35450417E8   
1.233327E9      11.0    NULL    1.0     2.351   NULL    NULL    -3.35450432E8   
NULL    1969-12-31 16:00:00.011 NULL    1969-12-27 18:49:09.583 1970-01-14 
22:35:27     1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -335450417 
     1233327000      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
dOYnqgaXoJ1P3ERwxe5N7   dOYnqgaXoJ      dOYnqgaXoJ      11.0    -6.70900834E8   
-0.9999902065507035     -3.35450431E8
+true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -64615982       1803053750      11      NULL    1       2       
NULL    8       11      11      11      11.0    NULL    -6.4615982E7    
1.80305375E9    11.0    NULL    1.0     2.351   NULL    8.0     -6.4615984E7    
NULL    1969-12-31 16:00:00.011 NULL    1969-12-30 22:03:04.018 1970-01-21 
12:50:53.75  1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -64615982  
     1803053750      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
8J5OB7K26PEV7kdbeHr3    8J5OB7K26P      8J5OB7K26P      11.0    -1.29231964E8   
-0.9999902065507035     -6.4615983E7
+true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    890988972       -1862301000     8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    8.90988972E8    
-1.862301E9     8.0     NULL    1.0     15.892  NULL    NULL    8.9098899E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-10 23:29:48.972 1969-12-10 
02:41:39     1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    890988972  
     -1862301000     8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
XylAH4  XylAH4  XylAH4  8.0     1.781977944E9   0.9893582466233818      
8.90988993E8
+true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    930867246       1205399250      8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    9.30867246E8    
1.20539925E9    8.0     NULL    1.0     15.892  NULL    NULL    9.3086726E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-11 10:34:27.246 1970-01-14 
14:49:59.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    930867246  
     1205399250      8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
c1V8o1A c1V8o1A c1V8o1A 8.0     1.861734492E9   0.9893582466233818      
9.30867265E8
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-14     -7196   NULL    -1552199500     -14     -7196   NULL    11      NULL    
NULL    -14     -14     -14     -14.0   -7196.0 NULL    -1.5521995E9    -14.0   
-7196.0 NULL    11.065  NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.986 
1969-12-31 15:59:52.804 NULL    1969-12-13 16:50:00.5   1969-12-31 15:59:46     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 16:00:11.065 
NULL    NULL    -14     -7196   NULL    -1552199500     -14.0   -7196.0 NULL    
0       1969-12-31 16:00:11.065 NULL    NULL    NULL    -14.0   NULL    
-0.9906073556948704     NULL
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-21     -7196   NULL    1542429000      -21     -7196   NULL    -5      NULL    
NULL    -21     -21     -21     -21.0   -7196.0 NULL    1.542429E9      -21.0   
-7196.0 NULL    -4.1    NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.979 
1969-12-31 15:59:52.804 NULL    1970-01-18 12:27:09     1969-12-31 15:59:39     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 15:59:55.9   
NULL    NULL    -21     -7196   NULL    1542429000      -21.0   -7196.0 NULL    
0       1969-12-31 15:59:55.9   NULL    NULL    NULL    -21.0   NULL    
-0.8366556385360561     NULL
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-24     -7196   NULL    829111000       -24     -7196   NULL    -7      NULL    
NULL    -24     -24     -24     -24.0   -7196.0 NULL    8.29111E8       -24.0   
-7196.0 NULL    -6.855  NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.976 
1969-12-31 15:59:52.804 NULL    1970-01-10 06:18:31     1969-12-31 15:59:36     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 15:59:53.145 
NULL    NULL    -24     -7196   NULL    829111000       -24.0   -7196.0 NULL    
0       1969-12-31 15:59:53.145 NULL    NULL    NULL    -24.0   NULL    
0.9055783620066238      NULL

http://git-wip-us.apache.org/repos/asf/hive/blob/2bd2e9a0/ql/src/test/results/clientpositive/vectorized_casts.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vectorized_casts.q.out 
b/ql/src/test/results/clientpositive/vectorized_casts.q.out
index 804653c..8520125 100644
--- a/ql/src/test/results/clientpositive/vectorized_casts.q.out
+++ b/ql/src/test/results/clientpositive/vectorized_casts.q.out
@@ -339,16 +339,16 @@ where cbigint % 250 = 0
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
-true   NULL    true    true    true    NULL    false   false   true    true    
-51     NULL    773600971       1053923250      -51     NULL    0       8       
NULL    2       -51     -51     -51     -51.0   NULL    7.73600971E8    
1.05392325E9    -51.0   NULL    0.0     8.451   NULL    2.0     7.7360096E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 14:53:20.971 1970-01-12 
20:45:23.25  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    773600971  
     1053923250      -51.0   NULL    FALSE   0       1969-12-31 16:00:08.451 
2yK4Bx76O       2yK4Bx76O       2yK4Bx76O       -51.0   1.547201942E9   
-0.6702291758433747     7.73600971E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -102936434      -1312782750     8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -1.02936434E8   
-1.31278275E9   8.0     NULL    0.0     15.892  NULL    NULL    -1.02936432E8   
NULL    1969-12-31 16:00:00.008 NULL    1969-12-30 11:24:23.566 1969-12-16 
11:20:17.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -102936434 
     -1312782750     8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
eJROSNhugc3kQR7Pb       eJROSNhugc      eJROSNhugc      8.0     -2.05872868E8   
0.9893582466233818      -1.02936434E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -661621138      -931392750      8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -6.61621138E8   
-9.3139275E8    8.0     NULL    0.0     15.892  NULL    NULL    -6.6162112E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-24 00:12:58.862 1969-12-20 
21:16:47.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -661621138 
     -931392750      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
L15l8i5k558tBcDV20      L15l8i5k55      L15l8i5k55      8.0     -1.323242276E9  
0.9893582466233818      -6.61621138E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -669632311      1588591250      8       NULL    0       15      
NULL    3       8       8       8       8.0     NULL    -6.69632311E8   
1.58859125E9    8.0     NULL    0.0     15.892  NULL    3.0     -6.6963232E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-23 21:59:27.689 1970-01-19 
01:16:31.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -669632311 
     1588591250      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
3r3sDvfUkG0yTP3LnX5mNQRr        3r3sDvfUkG      3r3sDvfUkG      8.0     
-1.339264622E9  0.9893582466233818      -6.69632311E8
-true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    805179664       868161500       8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    8.05179664E8    
8.681615E8      8.0     NULL    0.0     15.892  NULL    NULL    8.0517965E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-09 23:39:39.664 1970-01-10 
17:09:21.5   1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    805179664  
     868161500       8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
e005B5q e005B5q e005B5q 8.0     1.610359328E9   0.9893582466233818      
8.05179664E8
-true   NULL    true    true    true    NULL    true    false   true    true    
-51     NULL    747553882       -1930467250     -51     NULL    1       8       
NULL    NULL    -51     -51     -51     -51.0   NULL    7.47553882E8    
-1.93046725E9   -51.0   NULL    1.0     8.451   NULL    NULL    7.4755386E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 07:39:13.882 1969-12-09 
07:45:32.75  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    747553882  
     -1930467250     -51.0   NULL    TRUE    0       1969-12-31 16:00:08.451 
q8M86Fx0r       q8M86Fx0r       q8M86Fx0r       -51.0   1.495107764E9   
-0.6702291758433747     7.47553883E8
-true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -335450417      1233327000      11      NULL    1       2       
NULL    NULL    11      11      11      11.0    NULL    -3.35450417E8   
1.233327E9      11.0    NULL    1.0     2.351   NULL    NULL    -3.35450432E8   
NULL    1969-12-31 16:00:00.011 NULL    1969-12-27 18:49:09.583 1970-01-14 
22:35:27     1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -335450417 
     1233327000      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
dOYnqgaXoJ1P3ERwxe5N7   dOYnqgaXoJ      dOYnqgaXoJ      11.0    -6.70900834E8   
-0.9999902065507035     -3.35450416E8
-true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -64615982       1803053750      11      NULL    1       2       
NULL    8       11      11      11      11.0    NULL    -6.4615982E7    
1.80305375E9    11.0    NULL    1.0     2.351   NULL    8.0     -6.4615984E7    
NULL    1969-12-31 16:00:00.011 NULL    1969-12-30 22:03:04.018 1970-01-21 
12:50:53.75  1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -64615982  
     1803053750      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
8J5OB7K26PEV7kdbeHr3    8J5OB7K26P      8J5OB7K26P      11.0    -1.29231964E8   
-0.9999902065507035     -6.4615981E7
-true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    890988972       -1862301000     8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    8.90988972E8    
-1.862301E9     8.0     NULL    1.0     15.892  NULL    NULL    8.9098899E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-10 23:29:48.972 1969-12-10 
02:41:39     1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    890988972  
     -1862301000     8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
XylAH4  XylAH4  XylAH4  8.0     1.781977944E9   0.9893582466233818      
8.90988973E8
-true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    930867246       1205399250      8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    9.30867246E8    
1.20539925E9    8.0     NULL    1.0     15.892  NULL    NULL    9.3086726E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-11 10:34:27.246 1970-01-14 
14:49:59.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    930867246  
     1205399250      8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
c1V8o1A c1V8o1A c1V8o1A 8.0     1.861734492E9   0.9893582466233818      
9.30867247E8
+true   NULL    true    true    true    NULL    false   false   true    true    
-51     NULL    773600971       1053923250      -51     NULL    0       8       
NULL    2       -51     -51     -51     -51.0   NULL    7.73600971E8    
1.05392325E9    -51.0   NULL    0.0     8.451   NULL    2.0     7.7360096E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 14:53:20.971 1970-01-12 
20:45:23.25  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    773600971  
     1053923250      -51.0   NULL    FALSE   0       1969-12-31 16:00:08.451 
2yK4Bx76O       2yK4Bx76O       2yK4Bx76O       -51.0   1.547201942E9   
-0.6702291758433747     7.7360096E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -102936434      -1312782750     8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -1.02936434E8   
-1.31278275E9   8.0     NULL    0.0     15.892  NULL    NULL    -1.02936432E8   
NULL    1969-12-31 16:00:00.008 NULL    1969-12-30 11:24:23.566 1969-12-16 
11:20:17.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -102936434 
     -1312782750     8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
eJROSNhugc3kQR7Pb       eJROSNhugc      eJROSNhugc      8.0     -2.05872868E8   
0.9893582466233818      -1.02936432E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -661621138      -931392750      8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    -6.61621138E8   
-9.3139275E8    8.0     NULL    0.0     15.892  NULL    NULL    -6.6162112E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-24 00:12:58.862 1969-12-20 
21:16:47.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -661621138 
     -931392750      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
L15l8i5k558tBcDV20      L15l8i5k55      L15l8i5k55      8.0     -1.323242276E9  
0.9893582466233818      -6.6162112E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    -669632311      1588591250      8       NULL    0       15      
NULL    3       8       8       8       8.0     NULL    -6.69632311E8   
1.58859125E9    8.0     NULL    0.0     15.892  NULL    3.0     -6.6963232E8    
NULL    1969-12-31 16:00:00.008 NULL    1969-12-23 21:59:27.689 1970-01-19 
01:16:31.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    -669632311 
     1588591250      8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
3r3sDvfUkG0yTP3LnX5mNQRr        3r3sDvfUkG      3r3sDvfUkG      8.0     
-1.339264622E9  0.9893582466233818      -6.6963232E8
+true   NULL    true    true    true    NULL    false   false   true    true    
8       NULL    805179664       868161500       8       NULL    0       15      
NULL    NULL    8       8       8       8.0     NULL    8.05179664E8    
8.681615E8      8.0     NULL    0.0     15.892  NULL    NULL    8.0517965E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-09 23:39:39.664 1970-01-10 
17:09:21.5   1969-12-31 16:00:08     NULL    1969-12-31 16:00:00     1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    805179664  
     868161500       8.0     NULL    FALSE   0       1969-12-31 16:00:15.892 
e005B5q e005B5q e005B5q 8.0     1.610359328E9   0.9893582466233818      
8.05179648E8
+true   NULL    true    true    true    NULL    true    false   true    true    
-51     NULL    747553882       -1930467250     -51     NULL    1       8       
NULL    NULL    -51     -51     -51     -51.0   NULL    7.47553882E8    
-1.93046725E9   -51.0   NULL    1.0     8.451   NULL    NULL    7.4755386E8     
NULL    1969-12-31 15:59:59.949 NULL    1970-01-09 07:39:13.882 1969-12-09 
07:45:32.75  1969-12-31 15:59:09     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:08.451 NULL    NULL    -51     NULL    747553882  
     -1930467250     -51.0   NULL    TRUE    0       1969-12-31 16:00:08.451 
q8M86Fx0r       q8M86Fx0r       q8M86Fx0r       -51.0   1.495107764E9   
-0.6702291758433747     7.47553857E8
+true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -335450417      1233327000      11      NULL    1       2       
NULL    NULL    11      11      11      11.0    NULL    -3.35450417E8   
1.233327E9      11.0    NULL    1.0     2.351   NULL    NULL    -3.35450432E8   
NULL    1969-12-31 16:00:00.011 NULL    1969-12-27 18:49:09.583 1970-01-14 
22:35:27     1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -335450417 
     1233327000      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
dOYnqgaXoJ1P3ERwxe5N7   dOYnqgaXoJ      dOYnqgaXoJ      11.0    -6.70900834E8   
-0.9999902065507035     -3.35450431E8
+true   NULL    true    true    true    NULL    true    false   true    true    
11      NULL    -64615982       1803053750      11      NULL    1       2       
NULL    8       11      11      11      11.0    NULL    -6.4615982E7    
1.80305375E9    11.0    NULL    1.0     2.351   NULL    8.0     -6.4615984E7    
NULL    1969-12-31 16:00:00.011 NULL    1969-12-30 22:03:04.018 1970-01-21 
12:50:53.75  1969-12-31 16:00:11     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:02.351 NULL    NULL    11      NULL    -64615982  
     1803053750      11.0    NULL    TRUE    0       1969-12-31 16:00:02.351 
8J5OB7K26PEV7kdbeHr3    8J5OB7K26P      8J5OB7K26P      11.0    -1.29231964E8   
-0.9999902065507035     -6.4615983E7
+true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    890988972       -1862301000     8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    8.90988972E8    
-1.862301E9     8.0     NULL    1.0     15.892  NULL    NULL    8.9098899E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-10 23:29:48.972 1969-12-10 
02:41:39     1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    890988972  
     -1862301000     8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
XylAH4  XylAH4  XylAH4  8.0     1.781977944E9   0.9893582466233818      
8.90988993E8
+true   NULL    true    true    true    NULL    true    false   true    true    
8       NULL    930867246       1205399250      8       NULL    1       15      
NULL    NULL    8       8       8       8.0     NULL    9.30867246E8    
1.20539925E9    8.0     NULL    1.0     15.892  NULL    NULL    9.3086726E8     
NULL    1969-12-31 16:00:00.008 NULL    1970-01-11 10:34:27.246 1970-01-14 
14:49:59.25  1969-12-31 16:00:08     NULL    1969-12-31 16:00:00.001 1969-12-31 
16:00:00     1969-12-31 16:00:15.892 NULL    NULL    8       NULL    930867246  
     1205399250      8.0     NULL    TRUE    0       1969-12-31 16:00:15.892 
c1V8o1A c1V8o1A c1V8o1A 8.0     1.861734492E9   0.9893582466233818      
9.30867265E8
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-14     -7196   NULL    -1552199500     -14     -7196   NULL    11      NULL    
NULL    -14     -14     -14     -14.0   -7196.0 NULL    -1.5521995E9    -14.0   
-7196.0 NULL    11.065  NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.986 
1969-12-31 15:59:52.804 NULL    1969-12-13 16:50:00.5   1969-12-31 15:59:46     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 16:00:11.065 
NULL    NULL    -14     -7196   NULL    -1552199500     -14.0   -7196.0 NULL    
0       1969-12-31 16:00:11.065 NULL    NULL    NULL    -14.0   NULL    
-0.9906073556948704     NULL
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-21     -7196   NULL    1542429000      -21     -7196   NULL    -5      NULL    
NULL    -21     -21     -21     -21.0   -7196.0 NULL    1.542429E9      -21.0   
-7196.0 NULL    -4.1    NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.979 
1969-12-31 15:59:52.804 NULL    1970-01-18 12:27:09     1969-12-31 15:59:39     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 15:59:55.9   
NULL    NULL    -21     -7196   NULL    1542429000      -21.0   -7196.0 NULL    
0       1969-12-31 15:59:55.9   NULL    NULL    NULL    -21.0   NULL    
-0.8366556385360561     NULL
 true   true    NULL    true    true    true    NULL    false   true    NULL    
-24     -7196   NULL    829111000       -24     -7196   NULL    -7      NULL    
NULL    -24     -24     -24     -24.0   -7196.0 NULL    8.29111E8       -24.0   
-7196.0 NULL    -6.855  NULL    NULL    NULL    -7196.0 1969-12-31 15:59:59.976 
1969-12-31 15:59:52.804 NULL    1970-01-10 06:18:31     1969-12-31 15:59:36     
1969-12-31 14:00:04     NULL    1969-12-31 16:00:00     1969-12-31 15:59:53.145 
NULL    NULL    -24     -7196   NULL    829111000       -24.0   -7196.0 NULL    
0       1969-12-31 15:59:53.145 NULL    NULL    NULL    -24.0   NULL    
0.9055783620066238      NULL

Reply via email to