http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_case_when_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_case_when_2.q.out 
b/ql/src/test/results/clientpositive/vector_case_when_2.q.out
index b8a5214..76c7f3d 100644
--- a/ql/src/test/results/clientpositive/vector_case_when_2.q.out
+++ b/ql/src/test/results/clientpositive/vector_case_when_2.q.out
@@ -392,8 +392,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: true
@@ -651,8 +651,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: true

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_cast_constant.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_cast_constant.q.out 
b/ql/src/test/results/clientpositive/vector_cast_constant.q.out
index d8a534f..8c596a6 100644
--- a/ql/src/test/results/clientpositive/vector_cast_constant.q.out
+++ b/ql/src/test/results/clientpositive/vector_cast_constant.q.out
@@ -165,8 +165,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_char_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_char_2.q.out 
b/ql/src/test/results/clientpositive/vector_char_2.q.out
index 97038ee..dc2c1e4 100644
--- a/ql/src/test/results/clientpositive/vector_char_2.q.out
+++ b/ql/src/test/results/clientpositive/vector_char_2.q.out
@@ -126,8 +126,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -314,8 +314,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_char_4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_char_4.q.out 
b/ql/src/test/results/clientpositive/vector_char_4.q.out
index 5b9f272..8d27537 100644
--- a/ql/src/test/results/clientpositive/vector_char_4.q.out
+++ b/ql/src/test/results/clientpositive/vector_char_4.q.out
@@ -174,8 +174,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_char_mapjoin1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_char_mapjoin1.q.out 
b/ql/src/test/results/clientpositive/vector_char_mapjoin1.q.out
index c98bb44..25199b8 100644
--- a/ql/src/test/results/clientpositive/vector_char_mapjoin1.q.out
+++ b/ql/src/test/results/clientpositive/vector_char_mapjoin1.q.out
@@ -213,8 +213,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -346,8 +346,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -481,8 +481,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_char_simple.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_char_simple.q.out 
b/ql/src/test/results/clientpositive/vector_char_simple.q.out
index 43c3e48..a845c47 100644
--- a/ql/src/test/results/clientpositive/vector_char_simple.q.out
+++ b/ql/src/test/results/clientpositive/vector_char_simple.q.out
@@ -70,8 +70,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -147,8 +147,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -236,8 +236,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_coalesce.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_coalesce.q.out 
b/ql/src/test/results/clientpositive/vector_coalesce.q.out
index d1b12e6..0d20a0e 100644
--- a/ql/src/test/results/clientpositive/vector_coalesce.q.out
+++ b/ql/src/test/results/clientpositive/vector_coalesce.q.out
@@ -42,8 +42,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -127,8 +127,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -213,8 +213,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -293,8 +293,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -379,8 +379,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -458,8 +458,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_coalesce_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_coalesce_2.q.out 
b/ql/src/test/results/clientpositive/vector_coalesce_2.q.out
index c42d295..6030750 100644
--- a/ql/src/test/results/clientpositive/vector_coalesce_2.q.out
+++ b/ql/src/test/results/clientpositive/vector_coalesce_2.q.out
@@ -93,8 +93,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -193,8 +193,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -288,8 +288,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -388,8 +388,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_coalesce_3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_coalesce_3.q.out 
b/ql/src/test/results/clientpositive/vector_coalesce_3.q.out
index 6b7e21b..884078d 100644
--- a/ql/src/test/results/clientpositive/vector_coalesce_3.q.out
+++ b/ql/src/test/results/clientpositive/vector_coalesce_3.q.out
@@ -145,8 +145,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_coalesce_4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_coalesce_4.q.out 
b/ql/src/test/results/clientpositive/vector_coalesce_4.q.out
index f359b22..c7c0da6 100644
--- a/ql/src/test/results/clientpositive/vector_coalesce_4.q.out
+++ b/ql/src/test/results/clientpositive/vector_coalesce_4.q.out
@@ -73,8 +73,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_count.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_count.q.out 
b/ql/src/test/results/clientpositive/vector_count.q.out
index 85d5926..10a144a 100644
--- a/ql/src/test/results/clientpositive/vector_count.q.out
+++ b/ql/src/test/results/clientpositive/vector_count.q.out
@@ -242,8 +242,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -327,8 +327,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_data_types.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_data_types.q.out 
b/ql/src/test/results/clientpositive/vector_data_types.q.out
index b72340d..dad2abd 100644
--- a/ql/src/test/results/clientpositive/vector_data_types.q.out
+++ b/ql/src/test/results/clientpositive/vector_data_types.q.out
@@ -244,8 +244,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -363,8 +363,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: true

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_date_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_date_1.q.out 
b/ql/src/test/results/clientpositive/vector_date_1.q.out
index affd786..c2e9e5d 100644
--- a/ql/src/test/results/clientpositive/vector_date_1.q.out
+++ b/ql/src/test/results/clientpositive/vector_date_1.q.out
@@ -131,8 +131,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -270,8 +270,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -409,8 +409,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -548,8 +548,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -691,8 +691,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -836,8 +836,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -943,8 +943,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_1.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_1.q.out
index 80def64..ee6895b 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_1.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_1.q.out
@@ -66,15 +66,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToBoolean(t) (type: boolean)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToBoolean(col 0:decimal(4,2)) 
-> 4:boolean
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToBoolean(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:boolean
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: boolean)
@@ -89,8 +89,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -98,9 +98,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint]
+              scratchColumnTypeNames: [decimal(4,2), bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -157,15 +157,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToByte(t) (type: tinyint)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToLong(col 0:decimal(4,2)) -> 
4:tinyint
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToLong(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:tinyint
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: tinyint)
@@ -180,8 +180,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -189,9 +189,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint]
+              scratchColumnTypeNames: [decimal(4,2), bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -248,15 +248,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToShort(t) (type: smallint)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToLong(col 0:decimal(4,2)) -> 
4:smallint
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToLong(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:smallint
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: smallint)
@@ -271,8 +271,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -280,9 +280,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint]
+              scratchColumnTypeNames: [decimal(4,2), bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -339,15 +339,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToInteger(t) (type: int)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToLong(col 0:decimal(4,2)) -> 
4:int
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToLong(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:int
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: int)
@@ -362,8 +362,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -371,9 +371,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint]
+              scratchColumnTypeNames: [decimal(4,2), bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -430,15 +430,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToLong(t) (type: bigint)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToLong(col 0:decimal(4,2)) -> 
4:bigint
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToLong(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:bigint
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: bigint)
@@ -453,8 +453,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -462,9 +462,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint]
+              scratchColumnTypeNames: [decimal(4,2), bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -521,15 +521,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToFloat(t) (type: float)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToFloat(col 0:decimal(4,2)) -> 
4:float
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToFloat(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:float
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: float)
@@ -544,8 +544,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -553,9 +553,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [double]
+              scratchColumnTypeNames: [decimal(4,2), double]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -612,15 +612,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToDouble(t) (type: double)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToDouble(col 0:decimal(4,2)) 
-> 4:double
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToDouble(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:double
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: double)
@@ -635,8 +635,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -644,9 +644,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [double]
+              scratchColumnTypeNames: [decimal(4,2), double]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -703,15 +703,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: UDFToString(t) (type: string)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToString(col 0:decimal(4,2)) 
-> 4:string
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToString(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:string
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: string)
@@ -726,8 +726,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -735,9 +735,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [string]
+              scratchColumnTypeNames: [decimal(4,2), string]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -794,15 +794,15 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:t:decimal(4,2), 
1:u:decimal(5,0), 2:v:decimal(10,0), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:t:decimal(4,2)/DECIMAL_64, 
1:u:decimal(5,0)/DECIMAL_64, 2:v:decimal(10,0)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: CAST( t AS TIMESTAMP) (type: timestamp)
               outputColumnNames: _col0
               Select Vectorization:
                   className: VectorSelectOperator
                   native: true
-                  projectedOutputColumnNums: [4]
-                  selectExpressions: CastDecimalToTimestamp(col 
0:decimal(4,2)) -> 4:timestamp
+                  projectedOutputColumnNums: [5]
+                  selectExpressions: CastDecimalToTimestamp(col 
4:decimal(4,2))(children: ConvertDecimal64ToDecimal(col 
0:decimal(4,2)/DECIMAL_64) -> 4:decimal(4,2)) -> 5:timestamp
               Statistics: Num rows: 2 Data size: 336 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: timestamp)
@@ -817,8 +817,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -826,9 +826,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0]
-              dataColumns: t:decimal(4,2), u:decimal(5,0), v:decimal(10,0)
+              dataColumns: t:decimal(4,2)/DECIMAL_64, 
u:decimal(5,0)/DECIMAL_64, v:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [timestamp]
+              scratchColumnTypeNames: [decimal(4,2), timestamp]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_10_0.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_10_0.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_10_0.q.out
index acb62df..6526abe 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_10_0.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_10_0.q.out
@@ -56,7 +56,7 @@ STAGE PLANS:
             Statistics: Num rows: 2 Data size: 112 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:dec:decimal(10,0), 
1:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:dec:decimal(10,0)/DECIMAL_64, 
1:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: dec (type: decimal(10,0))
               outputColumnNames: _col0
@@ -78,8 +78,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -87,7 +87,7 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 1
               includeColumns: [0]
-              dataColumns: dec:decimal(10,0)
+              dataColumns: dec:decimal(10,0)/DECIMAL_64
               partitionColumnCount: 0
               scratchColumnTypeNames: []
       Reduce Vectorization:

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_5.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_5.q.out
index 0bfd12e..f3e6b72 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_5.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_5.q.out
@@ -129,6 +129,40 @@ NULL
 124.00000
 125.20000
 200.00000
+PREHOOK: query: explain SELECT cast(key as decimal) FROM DECIMAL_5
+PREHOOK: type: QUERY
+POSTHOOK: query: explain SELECT cast(key as decimal) FROM DECIMAL_5
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Map Reduce
+      Map Operator Tree:
+          TableScan
+            alias: decimal_5
+            Statistics: Num rows: 38 Data size: 4072 Basic stats: COMPLETE 
Column stats: NONE
+            Select Operator
+              expressions: CAST( key AS decimal(10,0)) (type: decimal(10,0))
+              outputColumnNames: _col0
+              Statistics: Num rows: 38 Data size: 4072 Basic stats: COMPLETE 
Column stats: NONE
+              File Output Operator
+                compressed: false
+                Statistics: Num rows: 38 Data size: 4072 Basic stats: COMPLETE 
Column stats: NONE
+                table:
+                    input format: 
org.apache.hadoop.mapred.SequenceFileInputFormat
+                    output format: 
org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+                    serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+      Execution mode: vectorized
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
 PREHOOK: query: SELECT cast(key as decimal) FROM DECIMAL_5
 PREHOOK: type: QUERY
 PREHOOK: Input: default@decimal_5
@@ -137,42 +171,42 @@ POSTHOOK: query: SELECT cast(key as decimal) FROM 
DECIMAL_5
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@decimal_5
 #### A masked pattern was here ####
--4400
+-440000000
 NULL
 0
 0
-100
-10
-1
-0
-0
-200
-20
-2
-0
-0
-0
+10000000
+1000000
+100000
+10000
+1000
+20000000
+2000000
+200000
 0
-0
-0
-0
-0
-0
-1
-2
-3
--1
--1
--1
-1
-1
-124
-125
--1255
-3
-3
-3
-1
+20000
+2000
+30000
+33000
+33300
+-30000
+-33000
+-33300
+100000
+200000
+314000
+-112000
+-112000
+-112200
+112000
+112200
+12400000
+12520000
+-125549000
+314000
+314000
+314000
+100000
 NULL
 NULL
 PREHOOK: query: SELECT cast(key as decimal(6,3)) FROM DECIMAL_5
@@ -187,38 +221,38 @@ NULL
 NULL
 0.000
 0.000
+NULL
+NULL
 100.000
 10.000
 1.000
-0.100
-0.010
+NULL
+NULL
 200.000
-20.000
-2.000
 0.000
-0.200
-0.020
-0.300
-0.330
-0.333
--0.300
--0.330
--0.333
-1.000
+20.000
 2.000
-3.140
--1.120
--1.120
--1.122
-1.120
-1.122
-124.000
-125.200
-NULL
-3.140
-3.140
-3.140
-1.000
+30.000
+33.000
+33.300
+-30.000
+-33.000
+-33.300
+100.000
+200.000
+314.000
+-112.000
+-112.000
+-112.200
+112.000
+112.200
+NULL
+NULL
+NULL
+314.000
+314.000
+314.000
+100.000
 NULL
 NULL
 PREHOOK: query: DROP TABLE DECIMAL_5_txt

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_6.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_6.q.out
index 2bc955a..445896b 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_6.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_6.q.out
@@ -129,7 +129,7 @@ STAGE PLANS:
             Statistics: Num rows: 27 Data size: 2572 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:key:decimal(10,5), 1:value:int, 
2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:key:decimal(10,5)/DECIMAL_64, 
1:value:int, 2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: key (type: decimal(10,5)), value (type: int)
               outputColumnNames: _col0, _col1
@@ -151,8 +151,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -160,7 +160,7 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 2
               includeColumns: [0, 1]
-              dataColumns: key:decimal(10,5), value:int
+              dataColumns: key:decimal(10,5)/DECIMAL_64, value:int
               partitionColumnCount: 0
               scratchColumnTypeNames: []
       Reduce Vectorization:
@@ -244,7 +244,7 @@ STAGE PLANS:
             Statistics: Num rows: 27 Data size: 3020 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:key:decimal(17,4), 1:value:int, 
2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:key:decimal(17,4)/DECIMAL_64, 
1:value:int, 2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: key (type: decimal(17,4)), value (type: int)
               outputColumnNames: _col0, _col1
@@ -266,8 +266,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -275,7 +275,7 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 2
               includeColumns: [0, 1]
-              dataColumns: key:decimal(17,4), value:int
+              dataColumns: key:decimal(17,4)/DECIMAL_64, value:int
               partitionColumnCount: 0
               scratchColumnTypeNames: []
       Reduce Vectorization:
@@ -511,7 +511,7 @@ STAGE PLANS:
             Statistics: Num rows: 27 Data size: 2572 Basic stats: COMPLETE 
Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:key:decimal(10,5), 1:value:int, 
2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:key:decimal(10,5)/DECIMAL_64, 
1:value:int, 2:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Select Operator
               expressions: (key + 5.5) (type: decimal(11,5)), (value * 11) 
(type: int)
               outputColumnNames: _col0, _col1
@@ -519,7 +519,7 @@ STAGE PLANS:
                   className: VectorSelectOperator
                   native: true
                   projectedOutputColumnNums: [3, 4]
-                  selectExpressions: DecimalColAddDecimalScalar(col 
0:decimal(10,5), val 5.5) -> 3:decimal(11,5), LongColMultiplyLongScalar(col 
1:int, val 11) -> 4:int
+                  selectExpressions: Decimal64ColAddDecimal64Scalar(col 
0:decimal(10,5)/DECIMAL_64, decimal64Val 550000, decimalVal 5.5) -> 
3:decimal(11,5)/DECIMAL_64, LongColMultiplyLongScalar(col 1:int, val 11) -> 
4:int
               Statistics: Num rows: 27 Data size: 2572 Basic stats: COMPLETE 
Column stats: NONE
               Reduce Output Operator
                 key expressions: _col1 (type: int)
@@ -535,8 +535,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -544,9 +544,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 2
               includeColumns: [0, 1]
-              dataColumns: key:decimal(10,5), value:int
+              dataColumns: key:decimal(10,5)/DECIMAL_64, value:int
               partitionColumnCount: 0
-              scratchColumnTypeNames: [decimal(11,5), bigint]
+              scratchColumnTypeNames: [decimal(11,5)/DECIMAL_64, bigint]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out
index 04c534e..b9f4444 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out
@@ -103,8 +103,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -245,8 +245,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_cast.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_cast.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_cast.q.out
index 0850648..1c9ca38 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_cast.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_cast.q.out
@@ -56,8 +56,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out
----------------------------------------------------------------------
diff --git 
a/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out
index c296c30..674d3f7 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out
@@ -86,8 +86,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -199,12 +199,12 @@ STAGE PLANS:
             Statistics: Num rows: 12288 Data size: 2127808 Basic stats: 
COMPLETE Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:cdouble:double, 
1:cdecimal1:decimal(10,3), 2:cdecimal2:decimal(7,2), 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:cdouble:double, 
1:cdecimal1:decimal(10,3)/DECIMAL_64, 2:cdecimal2:decimal(7,2)/DECIMAL_64, 
3:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Filter Operator
               Filter Vectorization:
                   className: VectorFilterOperator
                   native: true
-                  predicateExpression: FilterExprAndExpr(children: 
FilterDecimalColGreaterDecimalScalar(col 1:decimal(10,3), val 0), 
FilterDecimalColLessDecimalScalar(col 1:decimal(10,3), val 12345.5678), 
FilterDecimalColNotEqualDecimalScalar(col 2:decimal(7,2), val 0), 
FilterDecimalColGreaterDecimalScalar(col 2:decimal(7,2), val 1000), 
SelectColumnIsNotNull(col 0:double))
+                  predicateExpression: FilterExprAndExpr(children: 
FilterDecimal64ColGreaterDecimal64Scalar(col 1:decimal(10,3)/DECIMAL_64, val 
0), FilterDecimalColLessDecimalScalar(col 4:decimal(10,3), val 
12345.5678)(children: ConvertDecimal64ToDecimal(col 1:decimal(10,3)/DECIMAL_64) 
-> 4:decimal(10,3)), FilterDecimal64ColNotEqualDecimal64Scalar(col 
2:decimal(7,2)/DECIMAL_64, val 0), FilterDecimal64ColGreaterDecimal64Scalar(col 
2:decimal(7,2)/DECIMAL_64, val 100000), SelectColumnIsNotNull(col 0:double))
               predicate: ((cdecimal1 < 12345.5678) and (cdecimal1 > 0) and 
(cdecimal2 <> 0) and (cdecimal2 > 1000) and cdouble is not null) (type: boolean)
               Statistics: Num rows: 455 Data size: 78788 Basic stats: COMPLETE 
Column stats: NONE
               Select Operator
@@ -213,8 +213,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [4, 6, 8, 10, 11, 12, 13, 14, 
15, 16, 17, 18, 19, 20]
-                    selectExpressions: DecimalColAddDecimalColumn(col 
1:decimal(10,3), col 2:decimal(7,2)) -> 4:decimal(11,3), 
DecimalColSubtractDecimalColumn(col 1:decimal(10,3), col 
5:decimal(9,2))(children: DecimalScalarMultiplyDecimalColumn(val 2, col 
2:decimal(7,2)) -> 5:decimal(9,2)) -> 6:decimal(11,3), 
DecimalColDivideDecimalColumn(col 7:decimal(11,3), col 
2:decimal(7,2))(children: DecimalColAddDecimalScalar(col 1:decimal(10,3), val 
2.34) -> 7:decimal(11,3)) -> 8:decimal(21,11), 
DecimalColMultiplyDecimalColumn(col 1:decimal(10,3), col 
9:decimal(12,6))(children: DecimalColDivideDecimalScalar(col 2:decimal(7,2), 
val 3.4) -> 9:decimal(12,6)) -> 10:decimal(23,9), 
DecimalColModuloDecimalScalar(col 1:decimal(10,3), val 10) -> 11:decimal(5,3), 
CastDecimalToLong(col 1:decimal(10,3)) -> 12:int, CastDecimalToLong(col 
2:decimal(7,2)) -> 13:smallint, CastDecimalToLong(col 2:decimal(7,2)) -> 
14:tinyint, CastDecimalToLong(col 1:decimal(10,3)) -> 15:bigint, 
CastDecimalToBoolean(col 1:decima
 l(10,3)) -> 16:boolean, CastDecimalToDouble(col 2:decimal(7,2)) -> 17:double, 
CastDecimalToFloat(col 1:decimal(10,3)) -> 18:float, CastDecimalToString(col 
2:decimal(7,2)) -> 19:string, CastDecimalToTimestamp(col 1:decimal(10,3)) -> 
20:timestamp
+                    projectedOutputColumnNums: [6, 8, 10, 12, 13, 14, 15, 16, 
17, 18, 19, 20, 21, 22]
+                    selectExpressions: DecimalColAddDecimalColumn(col 
4:decimal(10,3), col 5:decimal(7,2))(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3), ConvertDecimal64ToDecimal(col 
2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 6:decimal(11,3), 
DecimalColSubtractDecimalColumn(col 4:decimal(10,3), col 
7:decimal(9,2))(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3), 
DecimalScalarMultiplyDecimalColumn(val 2, col 5:decimal(7,2))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 
7:decimal(9,2)) -> 8:decimal(11,3), DecimalColDivideDecimalColumn(col 
23:decimal(11,3), col 5:decimal(7,2))(children: ConvertDecimal64ToDecimal(col 
9:decimal(11,3)/DECIMAL_64)(children: Decimal64ColAddDecimal64Scalar(col 
1:decimal(10,3)/DECIMAL_64, decimal64Val 2340, decimalVal 2.34) -> 
9:decimal(11,3)/DECIMAL_64) -> 23:decimal(11,3), ConvertDecimal64ToDecimal(col 
2:decimal(7,2)/DECIMAL_64) 
 -> 5:decimal(7,2)) -> 10:decimal(21,11), DecimalColMultiplyDecimalColumn(col 
4:decimal(10,3), col 11:decimal(12,6))(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3), 
DecimalColDivideDecimalScalar(col 5:decimal(7,2), val 3.4)(children: 
ConvertDecimal64ToDecimal(col 2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 
11:decimal(12,6)) -> 12:decimal(23,9), DecimalColModuloDecimalScalar(col 
4:decimal(10,3), val 10)(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) -> 13:decimal(5,3), 
CastDecimalToLong(col 4:decimal(10,3))(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) -> 14:int, 
CastDecimalToLong(col 5:decimal(7,2))(children: ConvertDecimal64ToDecimal(col 
2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 15:smallint, 
CastDecimalToLong(col 5:decimal(7,2))(children: ConvertDecimal64ToDecimal(col 
2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 16:tinyint, 
CastDecimalToLong(col 
 4:decimal(10,3))(children: ConvertDecimal64ToDecimal(col 
1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) -> 17:bigint, 
CastDecimalToBoolean(col 4:decimal(10,3))(children: 
ConvertDecimal64ToDecimal(col 1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) 
-> 18:boolean, CastDecimalToDouble(col 5:decimal(7,2))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 
19:double, CastDecimalToFloat(col 4:decimal(10,3))(children: 
ConvertDecimal64ToDecimal(col 1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) 
-> 20:float, CastDecimalToString(col 5:decimal(7,2))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(7,2)/DECIMAL_64) -> 5:decimal(7,2)) -> 
21:string, CastDecimalToTimestamp(col 4:decimal(10,3))(children: 
ConvertDecimal64ToDecimal(col 1:decimal(10,3)/DECIMAL_64) -> 4:decimal(10,3)) 
-> 22:timestamp
                 Statistics: Num rows: 455 Data size: 78788 Basic stats: 
COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: decimal(11,3)), _col1 (type: 
decimal(11,3)), _col2 (type: decimal(21,11)), _col3 (type: decimal(23,9)), 
_col4 (type: decimal(5,3)), _col5 (type: int), _col6 (type: smallint), _col7 
(type: tinyint), _col8 (type: bigint), _col9 (type: boolean), _col10 (type: 
double), _col11 (type: float), _col12 (type: string), _col13 (type: timestamp)
@@ -230,8 +230,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -239,9 +239,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 3
               includeColumns: [0, 1, 2]
-              dataColumns: cdouble:double, cdecimal1:decimal(10,3), 
cdecimal2:decimal(7,2)
+              dataColumns: cdouble:double, cdecimal1:decimal(10,3)/DECIMAL_64, 
cdecimal2:decimal(7,2)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [decimal(11,3), decimal(9,2), 
decimal(11,3), decimal(11,3), decimal(21,11), decimal(12,6), decimal(23,9), 
decimal(5,3), bigint, bigint, bigint, bigint, bigint, double, double, string, 
timestamp]
+              scratchColumnTypeNames: [decimal(10,3), decimal(7,2), 
decimal(11,3), decimal(9,2), decimal(11,3), decimal(11,3)/DECIMAL_64, 
decimal(21,11), decimal(12,6), decimal(23,9), decimal(5,3), bigint, bigint, 
bigint, bigint, bigint, double, double, string, timestamp, decimal(11,3)]
       Reduce Vectorization:
           enabled: false
           enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true
@@ -302,4 +302,4 @@ ORDER BY c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, 
c13, c14) q
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@decimal_test_small_n0
 #### A masked pattern was here ####
-774841630076
+1273824888155

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out
index 36e8810..bf3cf93 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out
@@ -167,8 +167,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -304,6 +304,17 @@ POSTHOOK: Input: default@t2_n29
 9.00   9
 9.00   9
 9.00   9
+PREHOOK: query: select count(*) from (select t1_n48.`dec`, t2_n29.`dec` from 
t1_n48 join t2_n29 on (t1_n48.`dec`=t2_n29.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_n48
+PREHOOK: Input: default@t2_n29
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_n48.`dec`, t2_n29.`dec` from 
t1_n48 join t2_n29 on (t1_n48.`dec`=t2_n29.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_n48
+POSTHOOK: Input: default@t2_n29
+#### A masked pattern was here ####
+106
 PREHOOK: query: explain vectorization detail
 select t1_n48.`dec`, t1_n48.value_dec, t2_n29.`dec`, t2_n29.value_dec from 
t1_n48 join t2_n29 on (t1_n48.`dec`=t2_n29.`dec`)
 PREHOOK: type: QUERY
@@ -397,8 +408,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -534,6 +545,17 @@ POSTHOOK: Input: default@t2_n29
 9.00   48.96   9       5
 9.00   48.96   9       7
 9.00   48.96   9       7
+PREHOOK: query: select count(*) from (select t1_n48.`dec`, t1_n48.value_dec, 
t2_n29.`dec`, t2_n29.value_dec from t1_n48 join t2_n29 on 
(t1_n48.`dec`=t2_n29.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_n48
+PREHOOK: Input: default@t2_n29
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_n48.`dec`, t1_n48.value_dec, 
t2_n29.`dec`, t2_n29.value_dec from t1_n48 join t2_n29 on 
(t1_n48.`dec`=t2_n29.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_n48
+POSTHOOK: Input: default@t2_n29
+#### A masked pattern was here ####
+106
 PREHOOK: query: CREATE TABLE over1k_small(t tinyint,
            si smallint,
            i int,
@@ -735,6 +757,17 @@ POSTHOOK: Input: default@t1_small
 POSTHOOK: Input: default@t2_small
 #### A masked pattern was here ####
 89.00  89
+PREHOOK: query: select count(*) from (select t1_small.`dec`, t2_small.`dec` 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_small
+PREHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_small.`dec`, t2_small.`dec` 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_small
+POSTHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+1
 PREHOOK: query: explain vectorization detail
 select t1_small.`dec`, t1_small.value_dec, t2_small.`dec`, t2_small.value_dec 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)
 PREHOOK: type: QUERY
@@ -860,6 +893,17 @@ POSTHOOK: Input: default@t1_small
 POSTHOOK: Input: default@t2_small
 #### A masked pattern was here ####
 89.00  15.09   89      15
+PREHOOK: query: select count(*) from (select t1_small.`dec`, 
t1_small.value_dec, t2_small.`dec`, t2_small.value_dec from t1_small join 
t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_small
+PREHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_small.`dec`, 
t1_small.value_dec, t2_small.`dec`, t2_small.value_dec from t1_small join 
t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_small
+POSTHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+1
 PREHOOK: query: explain vectorization detail
 select t1_small.`dec`, t2_small.`dec` from t1_small join t2_small on 
(t1_small.`dec`=t2_small.`dec`)
 PREHOOK: type: QUERY
@@ -986,6 +1030,17 @@ POSTHOOK: Input: default@t1_small
 POSTHOOK: Input: default@t2_small
 #### A masked pattern was here ####
 89.00  89
+PREHOOK: query: select count(*) from (select t1_small.`dec`, t2_small.`dec` 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_small
+PREHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_small.`dec`, t2_small.`dec` 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_small
+POSTHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+1
 PREHOOK: query: explain vectorization detail
 select t1_small.`dec`, t1_small.value_dec, t2_small.`dec`, t2_small.value_dec 
from t1_small join t2_small on (t1_small.`dec`=t2_small.`dec`)
 PREHOOK: type: QUERY
@@ -1112,3 +1167,14 @@ POSTHOOK: Input: default@t1_small
 POSTHOOK: Input: default@t2_small
 #### A masked pattern was here ####
 89.00  15.09   89      15
+PREHOOK: query: select count(*) from (select t1_small.`dec`, 
t1_small.value_dec, t2_small.`dec`, t2_small.value_dec from t1_small join 
t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+PREHOOK: type: QUERY
+PREHOOK: Input: default@t1_small
+PREHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+POSTHOOK: query: select count(*) from (select t1_small.`dec`, 
t1_small.value_dec, t2_small.`dec`, t2_small.value_dec from t1_small join 
t2_small on (t1_small.`dec`=t2_small.`dec`)) as t
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@t1_small
+POSTHOOK: Input: default@t2_small
+#### A masked pattern was here ####
+1

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_math_funcs.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_math_funcs.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_math_funcs.q.out
index 87596e7..417df95 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_math_funcs.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_math_funcs.q.out
@@ -146,8 +146,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -357,12 +357,12 @@ STAGE PLANS:
             Statistics: Num rows: 12288 Data size: 2201192 Basic stats: 
COMPLETE Column stats: NONE
             TableScan Vectorization:
                 native: true
-                vectorizationSchemaColumns: [0:cbigint:bigint, 
1:cdouble:double, 2:cdecimal1:decimal(12,4), 3:cdecimal2:decimal(14,8), 
4:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
+                vectorizationSchemaColumns: [0:cbigint:bigint, 
1:cdouble:double, 2:cdecimal1:decimal(12,4)/DECIMAL_64, 
3:cdecimal2:decimal(14,8)/DECIMAL_64, 
4:ROW__ID:struct<writeid:bigint,bucketid:int,rowid:bigint>]
             Filter Operator
               Filter Vectorization:
                   className: VectorFilterOperator
                   native: true
-                  predicateExpression: FilterExprAndExpr(children: 
FilterLongColEqualLongScalar(col 5:bigint, val 0)(children: 
LongColModuloLongScalar(col 0:bigint, val 500) -> 5:bigint), 
FilterDoubleColGreaterEqualDoubleScalar(col 7:double, val -1.0)(children: 
FuncSinDoubleToDouble(col 6:double)(children: CastDecimalToDouble(col 
2:decimal(12,4)) -> 6:double) -> 7:double))
+                  predicateExpression: FilterExprAndExpr(children: 
FilterLongColEqualLongScalar(col 5:bigint, val 0)(children: 
LongColModuloLongScalar(col 0:bigint, val 500) -> 5:bigint), 
FilterDoubleColGreaterEqualDoubleScalar(col 8:double, val -1.0)(children: 
FuncSinDoubleToDouble(col 7:double)(children: CastDecimalToDouble(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 7:double) -> 8:double))
               predicate: (((cbigint % 500) = 0) and (sin(cdecimal1) >= -1.0D)) 
(type: boolean)
               Statistics: Num rows: 2048 Data size: 366865 Basic stats: 
COMPLETE Column stats: NONE
               Select Operator
@@ -371,8 +371,8 @@ STAGE PLANS:
                 Select Vectorization:
                     className: VectorSelectOperator
                     native: true
-                    projectedOutputColumnNums: [2, 8, 9, 10, 11, 6, 12, 13, 
14, 16, 17, 7, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 2, 29, 5, 30]
-                    selectExpressions: 
FuncRoundWithNumDigitsDecimalToDecimal(col 2:decimal(12,4), decimalPlaces 2) -> 
8:decimal(11,2), FuncRoundDecimalToDecimal(col 2:decimal(12,4)) -> 
9:decimal(9,0), FuncFloorDecimalToDecimal(col 2:decimal(12,4)) -> 
10:decimal(9,0), FuncCeilDecimalToDecimal(col 2:decimal(12,4)) -> 
11:decimal(9,0), RoundWithNumDigitsDoubleToDouble(col 7, decimalPlaces 
58)(children: FuncExpDoubleToDouble(col 6:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 6:double) -> 7:double) -> 6:double, 
FuncLnDoubleToDouble(col 7:double)(children: CastDecimalToDouble(col 
2:decimal(12,4)) -> 7:double) -> 12:double, FuncLog10DoubleToDouble(col 
7:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 7:double) -> 
13:double, FuncLog2DoubleToDouble(col 7:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 7:double) -> 14:double, 
FuncLog2DoubleToDouble(col 7:double)(children: CastDecimalToDouble(col 
15:decimal(13,4))(children: DecimalColSubtractDecimal
 Scalar(col 2:decimal(12,4), val 15601) -> 15:decimal(13,4)) -> 7:double) -> 
16:double, FuncLogWithBaseDoubleToDouble(col 7:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 7:double) -> 17:double, 
FuncPowerDoubleToDouble(col 18:double)(children: FuncLog2DoubleToDouble(col 
7:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 7:double) -> 
18:double) -> 7:double, FuncPowerDoubleToDouble(col 19:double)(children: 
FuncLog2DoubleToDouble(col 18:double)(children: CastDecimalToDouble(col 
2:decimal(12,4)) -> 18:double) -> 19:double) -> 18:double, 
FuncSqrtDoubleToDouble(col 19:double)(children: CastDecimalToDouble(col 
2:decimal(12,4)) -> 19:double) -> 20:double, FuncAbsDecimalToDecimal(col 
2:decimal(12,4)) -> 21:decimal(12,4), FuncSinDoubleToDouble(col 
19:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 19:double) -> 
22:double, FuncASinDoubleToDouble(col 19:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 19:double) -> 23:double, 
FuncCosDoubleTo
 Double(col 19:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 
19:double) -> 24:double, FuncACosDoubleToDouble(col 19:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 19:double) -> 25:double, 
FuncATanDoubleToDouble(col 19:double)(children: CastDecimalToDouble(col 
2:decimal(12,4)) -> 19:double) -> 26:double, FuncDegreesDoubleToDouble(col 
19:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 19:double) -> 
27:double, FuncRadiansDoubleToDouble(col 19:double)(children: 
CastDecimalToDouble(col 2:decimal(12,4)) -> 19:double) -> 28:double, 
FuncNegateDecimalToDecimal(col 2:decimal(12,4)) -> 29:decimal(12,4), 
FuncSignDecimalToLong(col 2:decimal(12,4)) -> 5:int, FuncCosDoubleToDouble(col 
19:double)(children: DoubleColAddDoubleScalar(col 30:double, val 
3.14159)(children: DoubleColUnaryMinus(col 19:double)(children: 
FuncSinDoubleToDouble(col 30:double)(children: FuncLnDoubleToDouble(col 
19:double)(children: CastDecimalToDouble(col 2:decimal(12,4)) -> 19:doubl
 e) -> 30:double) -> 19:double) -> 30:double) -> 19:double) -> 30:double
+                    projectedOutputColumnNums: [2, 9, 10, 11, 12, 7, 13, 14, 
15, 17, 18, 8, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2, 30, 5, 31]
+                    selectExpressions: 
FuncRoundWithNumDigitsDecimalToDecimal(col 6:decimal(12,4), decimalPlaces 
2)(children: ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 
6:decimal(12,4)) -> 9:decimal(11,2), FuncRoundDecimalToDecimal(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 10:decimal(9,0), 
FuncFloorDecimalToDecimal(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 11:decimal(9,0), FuncCeilDecimalToDecimal(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 12:decimal(9,0), RoundWithNumDigitsDoubleToDouble(col 8, decimalPlaces 
58)(children: FuncExpDoubleToDouble(col 7:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 7:double) -> 8:double) -> 7:double, FuncLnDoubleToDouble(col 8:
 double)(children: CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 8:double) -> 13:double, FuncLog10DoubleToDouble(col 8:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 8:double) -> 14:double, FuncLog2DoubleToDouble(col 8:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 8:double) -> 15:double, FuncLog2DoubleToDouble(col 8:double)(children: 
CastDecimalToDouble(col 32:decimal(13,4))(children: 
ConvertDecimal64ToDecimal(col 16:decimal(13,4)/DECIMAL_64)(children: 
Decimal64ColSubtractDecimal64Scalar(col 2:decimal(12,4)/DECIMAL_64, 
decimal64Val 156010000, decimalVal 15601) -> 16:decimal(13,4)/DECIMAL_64) -> 
32:decimal(13,4)) -> 8:double) -> 17:double, FuncLogWithBaseDoubleToDouble(col 
8:double)(children: Cast
 DecimalToDouble(col 6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 8:double) -> 18:double, 
FuncPowerDoubleToDouble(col 19:double)(children: FuncLog2DoubleToDouble(col 
8:double)(children: CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 8:double) -> 19:double) -> 8:double, FuncPowerDoubleToDouble(col 
20:double)(children: FuncLog2DoubleToDouble(col 19:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 19:double) -> 20:double) -> 19:double, FuncSqrtDoubleToDouble(col 
20:double)(children: CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 20:double) -> 21:double, FuncAbsDecimalToDecimal(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMA
 L_64) -> 6:decimal(12,4)) -> 22:decimal(12,4), FuncSinDoubleToDouble(col 
20:double)(children: CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 20:double) -> 23:double, FuncASinDoubleToDouble(col 20:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 20:double) -> 24:double, FuncCosDoubleToDouble(col 20:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 20:double) -> 25:double, FuncACosDoubleToDouble(col 20:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 20:double) -> 26:double, FuncATanDoubleToDouble(col 20:double)(children: 
CastDecimalToDouble(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:d
 ecimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 20:double) -> 27:double, 
FuncDegreesDoubleToDouble(col 20:double)(children: CastDecimalToDouble(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 20:double) -> 28:double, 
FuncRadiansDoubleToDouble(col 20:double)(children: CastDecimalToDouble(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 20:double) -> 29:double, 
FuncNegateDecimalToDecimal(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 30:decimal(12,4), FuncSignDecimalToLong(col 6:decimal(12,4))(children: 
ConvertDecimal64ToDecimal(col 2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) 
-> 5:int, FuncCosDoubleToDouble(col 20:double)(children: 
DoubleColAddDoubleScalar(col 31:double, val 3.14159)(children: 
DoubleColUnaryMinus(col 20:double)(children: FuncSinDoubleToDouble(col 
31:double)(children: FuncLnDo
 ubleToDouble(col 20:double)(children: CastDecimalToDouble(col 
6:decimal(12,4))(children: ConvertDecimal64ToDecimal(col 
2:decimal(12,4)/DECIMAL_64) -> 6:decimal(12,4)) -> 20:double) -> 31:double) -> 
20:double) -> 31:double) -> 20:double) -> 31:double
                 Statistics: Num rows: 2048 Data size: 366865 Basic stats: 
COMPLETE Column stats: NONE
                 File Output Operator
                   compressed: false
@@ -388,8 +388,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false
@@ -397,9 +397,9 @@ STAGE PLANS:
           rowBatchContext:
               dataColumnCount: 4
               includeColumns: [0, 2]
-              dataColumns: cbigint:bigint, cdouble:double, 
cdecimal1:decimal(12,4), cdecimal2:decimal(14,8)
+              dataColumns: cbigint:bigint, cdouble:double, 
cdecimal1:decimal(12,4)/DECIMAL_64, cdecimal2:decimal(14,8)/DECIMAL_64
               partitionColumnCount: 0
-              scratchColumnTypeNames: [bigint, double, double, decimal(11,2), 
decimal(9,0), decimal(9,0), decimal(9,0), double, double, double, 
decimal(13,4), double, double, double, double, double, decimal(12,4), double, 
double, double, double, double, double, double, decimal(12,4), double]
+              scratchColumnTypeNames: [bigint, decimal(12,4), double, double, 
decimal(11,2), decimal(9,0), decimal(9,0), decimal(9,0), double, double, 
double, decimal(13,4)/DECIMAL_64, double, double, double, double, double, 
decimal(12,4), double, double, double, double, double, double, double, 
decimal(12,4), double, decimal(13,4)]
 
   Stage: Stage-0
     Fetch Operator

http://git-wip-us.apache.org/repos/asf/hive/blob/659e4107/ql/src/test/results/clientpositive/vector_decimal_precision.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/vector_decimal_precision.q.out 
b/ql/src/test/results/clientpositive/vector_decimal_precision.q.out
index fd6d9c3..e3e354f 100644
--- a/ql/src/test/results/clientpositive/vector_decimal_precision.q.out
+++ b/ql/src/test/results/clientpositive/vector_decimal_precision.q.out
@@ -604,8 +604,8 @@ STAGE PLANS:
       Map Vectorization:
           enabled: true
           enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS 
true
-          inputFormatFeatureSupport: []
-          featureSupportInUse: []
+          inputFormatFeatureSupport: [DECIMAL_64]
+          featureSupportInUse: [DECIMAL_64]
           inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
           allNative: false
           usesVectorUDFAdaptor: false

Reply via email to