From 8d109dd2ab03aafda86c1c91c20dde256208cc8e Mon Sep 17 00:00:00 2001 From: Ryan Blue Date: Fri, 21 Nov 2014 17:11:28 -0800 Subject: [PATCH] HIVE-8949: Add test for Parquet multimap of ints. This tests a map from strings to arrays of integers. --- .../clientpositive/parquet_map_of_arrays_of_ints.q | 16 ++++++ .../parquet_map_of_arrays_of_ints.q.out | 63 ++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 ql/src/test/queries/clientpositive/parquet_map_of_arrays_of_ints.q create mode 100644 ql/src/test/results/clientpositive/parquet_map_of_arrays_of_ints.q.out diff --git a/ql/src/test/queries/clientpositive/parquet_map_of_arrays_of_ints.q b/ql/src/test/queries/clientpositive/parquet_map_of_arrays_of_ints.q new file mode 100644 index 0000000..8517848 --- /dev/null +++ b/ql/src/test/queries/clientpositive/parquet_map_of_arrays_of_ints.q @@ -0,0 +1,16 @@ +-- this test reads and writes a parquet file with a map of arrays of ints +-- validates PARQUET-26 is fixed + +CREATE TABLE parquet_map_of_arrays_of_ints ( + examples MAP> +) STORED AS PARQUET; + +LOAD DATA LOCAL INPATH '../../data/files/StringMapOfOptionalIntArray.parquet' +OVERWRITE INTO TABLE parquet_map_of_arrays_of_ints; + +CREATE TABLE parquet_map_of_arrays_of_ints_copy STORED AS PARQUET AS SELECT * FROM parquet_map_of_arrays_of_ints; + +SELECT * FROM parquet_map_of_arrays_of_ints_copy; + +DROP TABLE parquet_map_of_arrays_of_ints; +DROP TABLE parquet_map_of_arrays_of_ints_copy; diff --git a/ql/src/test/results/clientpositive/parquet_map_of_arrays_of_ints.q.out b/ql/src/test/results/clientpositive/parquet_map_of_arrays_of_ints.q.out new file mode 100644 index 0000000..6ce63f7 --- /dev/null +++ b/ql/src/test/results/clientpositive/parquet_map_of_arrays_of_ints.q.out @@ -0,0 +1,63 @@ +PREHOOK: query: -- this test reads and writes a parquet file with a map of arrays of ints +-- validates PARQUET-26 is fixed + +CREATE TABLE parquet_map_of_arrays_of_ints ( + examples MAP> +) STORED AS PARQUET +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@parquet_map_of_arrays_of_ints +POSTHOOK: query: -- this test reads and writes a parquet file with a map of arrays of ints +-- validates PARQUET-26 is fixed + +CREATE TABLE parquet_map_of_arrays_of_ints ( + examples MAP> +) STORED AS PARQUET +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@parquet_map_of_arrays_of_ints +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/StringMapOfOptionalIntArray.parquet' +OVERWRITE INTO TABLE parquet_map_of_arrays_of_ints +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@parquet_map_of_arrays_of_ints +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/StringMapOfOptionalIntArray.parquet' +OVERWRITE INTO TABLE parquet_map_of_arrays_of_ints +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@parquet_map_of_arrays_of_ints +PREHOOK: query: CREATE TABLE parquet_map_of_arrays_of_ints_copy STORED AS PARQUET AS SELECT * FROM parquet_map_of_arrays_of_ints +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@parquet_map_of_arrays_of_ints +PREHOOK: Output: database:default +PREHOOK: Output: default@parquet_map_of_arrays_of_ints_copy +POSTHOOK: query: CREATE TABLE parquet_map_of_arrays_of_ints_copy STORED AS PARQUET AS SELECT * FROM parquet_map_of_arrays_of_ints +POSTHOOK: type: CREATETABLE_AS_SELECT +POSTHOOK: Input: default@parquet_map_of_arrays_of_ints +POSTHOOK: Output: database:default +POSTHOOK: Output: default@parquet_map_of_arrays_of_ints_copy +PREHOOK: query: SELECT * FROM parquet_map_of_arrays_of_ints_copy +PREHOOK: type: QUERY +PREHOOK: Input: default@parquet_map_of_arrays_of_ints_copy +#### A masked pattern was here #### +POSTHOOK: query: SELECT * FROM parquet_map_of_arrays_of_ints_copy +POSTHOOK: type: QUERY +POSTHOOK: Input: default@parquet_map_of_arrays_of_ints_copy +#### A masked pattern was here #### +{"low":[34,35,null],"high":[340,360]} +PREHOOK: query: DROP TABLE parquet_map_of_arrays_of_ints +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@parquet_map_of_arrays_of_ints +PREHOOK: Output: default@parquet_map_of_arrays_of_ints +POSTHOOK: query: DROP TABLE parquet_map_of_arrays_of_ints +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@parquet_map_of_arrays_of_ints +POSTHOOK: Output: default@parquet_map_of_arrays_of_ints +PREHOOK: query: DROP TABLE parquet_map_of_arrays_of_ints_copy +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@parquet_map_of_arrays_of_ints_copy +PREHOOK: Output: default@parquet_map_of_arrays_of_ints_copy +POSTHOOK: query: DROP TABLE parquet_map_of_arrays_of_ints_copy +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@parquet_map_of_arrays_of_ints_copy +POSTHOOK: Output: default@parquet_map_of_arrays_of_ints_copy -- 1.9.1