PREHOOK: query: DROP VIEW view1 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view1 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view2 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view2 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view3 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view3 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view4 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view4 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view5 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view5 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view6 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view6 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view7 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view7 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view8 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view8 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view9 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view9 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view10 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view10 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view11 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view11 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view12 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view12 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view13 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view13 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view14 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view14 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view15 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view15 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP VIEW view16 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW view16 POSTHOOK: type: DROPVIEW PREHOOK: query: DROP TEMPORARY FUNCTION test_translate PREHOOK: type: DROPFUNCTION POSTHOOK: query: DROP TEMPORARY FUNCTION test_translate POSTHOOK: type: DROPFUNCTION PREHOOK: query: DROP TEMPORARY FUNCTION test_max PREHOOK: type: DROPFUNCTION POSTHOOK: query: DROP TEMPORARY FUNCTION test_max POSTHOOK: type: DROPFUNCTION PREHOOK: query: DROP TEMPORARY FUNCTION test_explode PREHOOK: type: DROPFUNCTION POSTHOOK: query: DROP TEMPORARY FUNCTION test_explode POSTHOOK: type: DROPFUNCTION PREHOOK: query: SELECT * FROM src WHERE key=86 PREHOOK: type: QUERY PREHOOK: Input: default@src #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM src WHERE key=86 POSTHOOK: type: QUERY POSTHOOK: Input: default@src #### A masked pattern was here #### 86 val_86 PREHOOK: query: CREATE VIEW view1 AS SELECT value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view1 POSTHOOK: query: CREATE VIEW view1 AS SELECT value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view1 PREHOOK: query: CREATE VIEW view2 AS SELECT * FROM src PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view2 POSTHOOK: query: CREATE VIEW view2 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view2 PREHOOK: query: CREATE VIEW view3(valoo) TBLPROPERTIES ("fear" = "factor") AS SELECT upper(value) FROM src WHERE key=86 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view3 POSTHOOK: query: CREATE VIEW view3(valoo) TBLPROPERTIES ("fear" = "factor") AS SELECT upper(value) FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view3 PREHOOK: query: SELECT * from view1 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view1 #### A masked pattern was here #### POSTHOOK: query: SELECT * from view1 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view1 #### A masked pattern was here #### val_86 PREHOOK: query: SELECT * from view2 where key=18 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view2 #### A masked pattern was here #### POSTHOOK: query: SELECT * from view2 where key=18 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view2 #### A masked pattern was here #### 18 val_18 18 val_18 PREHOOK: query: SELECT * from view3 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view3 #### A masked pattern was here #### POSTHOOK: query: SELECT * from view3 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view3 #### A masked pattern was here #### VAL_86 PREHOOK: query: -- test EXPLAIN output for CREATE VIEW EXPLAIN CREATE VIEW view0(valoo) AS SELECT upper(value) FROM src WHERE key=86 PREHOOK: type: CREATEVIEW POSTHOOK: query: -- test EXPLAIN output for CREATE VIEW EXPLAIN CREATE VIEW view0(valoo) AS SELECT upper(value) FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW STAGE DEPENDENCIES: Stage-0 is a root stage STAGE PLANS: Stage: Stage-0 Create View Operator: Create View or replace: false columns: valoo string expanded text: SELECT `_c0` AS `valoo` FROM (SELECT upper(`src`.`value`) FROM `default`.`src` WHERE `src`.`key`=86) `default.view0` name: default.view0 original text: SELECT upper(value) FROM src WHERE key=86 PREHOOK: query: -- make sure EXPLAIN works with a query which references a view EXPLAIN SELECT * from view2 where key=18 PREHOOK: type: QUERY POSTHOOK: query: -- make sure EXPLAIN works with a query which references a view EXPLAIN SELECT * from view2 where key=18 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: src Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (UDFToDouble(key) = 18.0) (type: boolean) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: '18' (type: string), value (type: string) outputColumnNames: _col0, _col1 Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: ListSink PREHOOK: query: SHOW TABLES 'view.*' PREHOOK: type: SHOWTABLES POSTHOOK: query: SHOW TABLES 'view.*' POSTHOOK: type: SHOWTABLES view1 view2 view3 PREHOOK: query: DESCRIBE view1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view1 POSTHOOK: query: DESCRIBE view1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view1 value string PREHOOK: query: DESCRIBE EXTENDED view1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view1 POSTHOOK: query: DESCRIBE EXTENDED view1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view1 value string #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view1 POSTHOOK: query: DESCRIBE FORMATTED view1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view1 # col_name data_type comment value string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT value FROM src WHERE key=86 View Expanded Text: SELECT `src`.`value` FROM `default`.`src` WHERE `src`.`key`=86 PREHOOK: query: DESCRIBE view2 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view2 POSTHOOK: query: DESCRIBE view2 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view2 key string value string PREHOOK: query: DESCRIBE EXTENDED view2 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view2 POSTHOOK: query: DESCRIBE EXTENDED view2 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view2 key string value string #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view2 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view2 POSTHOOK: query: DESCRIBE FORMATTED view2 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view2 # col_name data_type comment key string value string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT * FROM src View Expanded Text: SELECT `src`.`key`, `src`.`value` FROM `default`.`src` PREHOOK: query: DESCRIBE view3 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view3 POSTHOOK: query: DESCRIBE view3 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view3 valoo string PREHOOK: query: DESCRIBE EXTENDED view3 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view3 POSTHOOK: query: DESCRIBE EXTENDED view3 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view3 valoo string #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view3 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view3 POSTHOOK: query: DESCRIBE FORMATTED view3 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view3 # col_name data_type comment valoo string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: fear factor #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT upper(value) FROM src WHERE key=86 View Expanded Text: SELECT `_c0` AS `valoo` FROM (SELECT upper(`src`.`value`) FROM `default`.`src` WHERE `src`.`key`=86) `default.view3` PREHOOK: query: ALTER VIEW view3 SET TBLPROPERTIES ("biggest" = "loser") PREHOOK: type: ALTERVIEW_PROPERTIES PREHOOK: Input: default@view3 PREHOOK: Output: default@view3 POSTHOOK: query: ALTER VIEW view3 SET TBLPROPERTIES ("biggest" = "loser") POSTHOOK: type: ALTERVIEW_PROPERTIES POSTHOOK: Input: default@view3 POSTHOOK: Output: default@view3 PREHOOK: query: DESCRIBE EXTENDED view3 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view3 POSTHOOK: query: DESCRIBE EXTENDED view3 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view3 valoo string #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view3 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view3 POSTHOOK: query: DESCRIBE FORMATTED view3 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view3 # col_name data_type comment valoo string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: biggest loser fear factor #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT upper(value) FROM src WHERE key=86 View Expanded Text: SELECT `_c0` AS `valoo` FROM (SELECT upper(`src`.`value`) FROM `default`.`src` WHERE `src`.`key`=86) `default.view3` PREHOOK: query: CREATE TABLE table1 (key int) PREHOOK: type: CREATETABLE PREHOOK: Output: database:default PREHOOK: Output: default@table1 POSTHOOK: query: CREATE TABLE table1 (key int) POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@table1 PREHOOK: query: -- use DESCRIBE EXTENDED on a base table and an external table as points -- of comparison for view descriptions DESCRIBE EXTENDED table1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@table1 POSTHOOK: query: -- use DESCRIBE EXTENDED on a base table and an external table as points -- of comparison for view descriptions DESCRIBE EXTENDED table1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@table1 key int #### A masked pattern was here #### PREHOOK: query: DESCRIBE EXTENDED src1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@src1 POSTHOOK: query: DESCRIBE EXTENDED src1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@src1 key string default value string default #### A masked pattern was here #### PREHOOK: query: -- use DESCRIBE EXTENDED on a base table as a point of comparison for -- view descriptions DESCRIBE EXTENDED table1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@table1 POSTHOOK: query: -- use DESCRIBE EXTENDED on a base table as a point of comparison for -- view descriptions DESCRIBE EXTENDED table1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@table1 key int #### A masked pattern was here #### PREHOOK: query: INSERT OVERWRITE TABLE table1 SELECT key FROM src WHERE key = 86 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Output: default@table1 POSTHOOK: query: INSERT OVERWRITE TABLE table1 SELECT key FROM src WHERE key = 86 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@table1 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: SELECT * FROM table1 PREHOOK: type: QUERY PREHOOK: Input: default@table1 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM table1 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 #### A masked pattern was here #### 86 PREHOOK: query: CREATE VIEW view4 AS SELECT * FROM table1 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@table1 PREHOOK: Output: database:default PREHOOK: Output: default@view4 POSTHOOK: query: CREATE VIEW view4 AS SELECT * FROM table1 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@table1 POSTHOOK: Output: database:default POSTHOOK: Output: default@view4 PREHOOK: query: SELECT * FROM view4 PREHOOK: type: QUERY PREHOOK: Input: default@table1 PREHOOK: Input: default@view4 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view4 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view4 #### A masked pattern was here #### 86 PREHOOK: query: DESCRIBE view4 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view4 POSTHOOK: query: DESCRIBE view4 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view4 key int PREHOOK: query: ALTER TABLE table1 ADD COLUMNS (value STRING) PREHOOK: type: ALTERTABLE_ADDCOLS PREHOOK: Input: default@table1 PREHOOK: Output: default@table1 POSTHOOK: query: ALTER TABLE table1 ADD COLUMNS (value STRING) POSTHOOK: type: ALTERTABLE_ADDCOLS POSTHOOK: Input: default@table1 POSTHOOK: Output: default@table1 PREHOOK: query: SELECT * FROM table1 PREHOOK: type: QUERY PREHOOK: Input: default@table1 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM table1 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 #### A masked pattern was here #### 86 NULL PREHOOK: query: SELECT * FROM view4 PREHOOK: type: QUERY PREHOOK: Input: default@table1 PREHOOK: Input: default@view4 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view4 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view4 #### A masked pattern was here #### 86 PREHOOK: query: DESCRIBE table1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@table1 POSTHOOK: query: DESCRIBE table1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@table1 key int value string PREHOOK: query: DESCRIBE view4 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view4 POSTHOOK: query: DESCRIBE view4 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view4 key int PREHOOK: query: CREATE VIEW view5 AS SELECT v1.key as key1, v2.key as key2 FROM view4 v1 join view4 v2 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@table1 PREHOOK: Input: default@view4 PREHOOK: Output: database:default PREHOOK: Output: default@view5 POSTHOOK: query: CREATE VIEW view5 AS SELECT v1.key as key1, v2.key as key2 FROM view4 v1 join view4 v2 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view4 POSTHOOK: Output: database:default POSTHOOK: Output: default@view5 Warning: Shuffle Join JOIN[6][tables = [v1, v2]] in Stage 'Stage-1:MAPRED' is a cross product PREHOOK: query: SELECT * FROM view5 PREHOOK: type: QUERY PREHOOK: Input: default@table1 PREHOOK: Input: default@view4 PREHOOK: Input: default@view5 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view5 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view4 POSTHOOK: Input: default@view5 #### A masked pattern was here #### 86 86 PREHOOK: query: DESCRIBE view5 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view5 POSTHOOK: query: DESCRIBE view5 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view5 key1 int key2 int PREHOOK: query: -- verify that column name and comment in DDL portion -- overrides column alias in SELECT CREATE VIEW view6(valoo COMMENT 'I cannot spell') AS SELECT upper(value) as blarg FROM src WHERE key=86 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view6 POSTHOOK: query: -- verify that column name and comment in DDL portion -- overrides column alias in SELECT CREATE VIEW view6(valoo COMMENT 'I cannot spell') AS SELECT upper(value) as blarg FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view6 PREHOOK: query: DESCRIBE view6 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view6 POSTHOOK: query: DESCRIBE view6 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view6 valoo string I cannot spell PREHOOK: query: -- verify that ORDER BY and LIMIT are both supported in view def CREATE VIEW view7 AS SELECT * FROM src WHERE key > 80 AND key < 100 ORDER BY key, value LIMIT 10 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view7 POSTHOOK: query: -- verify that ORDER BY and LIMIT are both supported in view def CREATE VIEW view7 AS SELECT * FROM src WHERE key > 80 AND key < 100 ORDER BY key, value LIMIT 10 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view7 PREHOOK: query: SELECT * FROM view7 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view7 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view7 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view7 #### A masked pattern was here #### 82 val_82 83 val_83 83 val_83 84 val_84 84 val_84 85 val_85 86 val_86 87 val_87 90 val_90 90 val_90 PREHOOK: query: -- top-level ORDER BY should override the one inside the view -- (however, the inside ORDER BY should still influence the evaluation -- of the limit) SELECT * FROM view7 ORDER BY key DESC, value PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view7 #### A masked pattern was here #### POSTHOOK: query: -- top-level ORDER BY should override the one inside the view -- (however, the inside ORDER BY should still influence the evaluation -- of the limit) SELECT * FROM view7 ORDER BY key DESC, value POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view7 #### A masked pattern was here #### 90 val_90 90 val_90 87 val_87 86 val_86 85 val_85 84 val_84 84 val_84 83 val_83 83 val_83 82 val_82 PREHOOK: query: -- top-level LIMIT should override if lower SELECT * FROM view7 LIMIT 5 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view7 #### A masked pattern was here #### POSTHOOK: query: -- top-level LIMIT should override if lower SELECT * FROM view7 LIMIT 5 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view7 #### A masked pattern was here #### 82 val_82 83 val_83 83 val_83 84 val_84 84 val_84 PREHOOK: query: -- but not if higher SELECT * FROM view7 LIMIT 20 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view7 #### A masked pattern was here #### POSTHOOK: query: -- but not if higher SELECT * FROM view7 LIMIT 20 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view7 #### A masked pattern was here #### 82 val_82 83 val_83 83 val_83 84 val_84 84 val_84 85 val_85 86 val_86 87 val_87 90 val_90 90 val_90 PREHOOK: query: -- test usage of a function within a view CREATE TEMPORARY FUNCTION test_translate AS 'org.apache.hadoop.hive.ql.udf.generic.GenericUDFTestTranslate' PREHOOK: type: CREATEFUNCTION PREHOOK: Output: test_translate POSTHOOK: query: -- test usage of a function within a view CREATE TEMPORARY FUNCTION test_translate AS 'org.apache.hadoop.hive.ql.udf.generic.GenericUDFTestTranslate' POSTHOOK: type: CREATEFUNCTION POSTHOOK: Output: test_translate PREHOOK: query: CREATE VIEW view8(c) AS SELECT test_translate('abc', 'a', 'b') FROM table1 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@table1 PREHOOK: Output: database:default PREHOOK: Output: default@view8 POSTHOOK: query: CREATE VIEW view8(c) AS SELECT test_translate('abc', 'a', 'b') FROM table1 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@table1 POSTHOOK: Output: database:default POSTHOOK: Output: default@view8 PREHOOK: query: DESCRIBE EXTENDED view8 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view8 POSTHOOK: query: DESCRIBE EXTENDED view8 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view8 c string #### A masked pattern was here #### FROM table1, viewExpandedText:SELECT `_c0` AS `c` FROM (SELECT `test_translate`('abc', 'a', 'b') FROM `default`.`table1`) `default.view8`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view8 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view8 POSTHOOK: query: DESCRIBE FORMATTED view8 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view8 # col_name data_type comment c string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT test_translate('abc', 'a', 'b') FROM table1 View Expanded Text: SELECT `_c0` AS `c` FROM (SELECT `test_translate`('abc', 'a', 'b') FROM `default`.`table1`) `default.view8` PREHOOK: query: SELECT * FROM view8 PREHOOK: type: QUERY PREHOOK: Input: default@table1 PREHOOK: Input: default@view8 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view8 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view8 #### A masked pattern was here #### bbc PREHOOK: query: -- test usage of a UDAF within a view CREATE TEMPORARY FUNCTION test_max AS 'org.apache.hadoop.hive.ql.udf.UDAFTestMax' PREHOOK: type: CREATEFUNCTION PREHOOK: Output: test_max POSTHOOK: query: -- test usage of a UDAF within a view CREATE TEMPORARY FUNCTION test_max AS 'org.apache.hadoop.hive.ql.udf.UDAFTestMax' POSTHOOK: type: CREATEFUNCTION POSTHOOK: Output: test_max PREHOOK: query: -- disable map-side aggregation CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view9 POSTHOOK: query: -- disable map-side aggregation CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view9 PREHOOK: query: DESCRIBE EXTENDED view9 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view9 POSTHOOK: query: DESCRIBE EXTENDED view9 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view9 m int #### A masked pattern was here #### FROM src, viewExpandedText:SELECT `_c0` AS `m` FROM (SELECT `test_max`(length(`src`.`value`)) FROM `default`.`src`) `default.view9`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view9 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view9 POSTHOOK: query: DESCRIBE FORMATTED view9 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view9 # col_name data_type comment m int # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT test_max(length(value)) FROM src View Expanded Text: SELECT `_c0` AS `m` FROM (SELECT `test_max`(length(`src`.`value`)) FROM `default`.`src`) `default.view9` PREHOOK: query: SELECT * FROM view9 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view9 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view9 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view9 #### A masked pattern was here #### 7 PREHOOK: query: DROP VIEW view9 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view9 PREHOOK: Output: default@view9 POSTHOOK: query: DROP VIEW view9 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view9 POSTHOOK: Output: default@view9 PREHOOK: query: -- enable map-side aggregation CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view9 POSTHOOK: query: -- enable map-side aggregation CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view9 PREHOOK: query: DESCRIBE EXTENDED view9 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view9 POSTHOOK: query: DESCRIBE EXTENDED view9 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view9 m int #### A masked pattern was here #### FROM src, viewExpandedText:SELECT `_c0` AS `m` FROM (SELECT `test_max`(length(`src`.`value`)) FROM `default`.`src`) `default.view9`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view9 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view9 POSTHOOK: query: DESCRIBE FORMATTED view9 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view9 # col_name data_type comment m int # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT test_max(length(value)) FROM src View Expanded Text: SELECT `_c0` AS `m` FROM (SELECT `test_max`(length(`src`.`value`)) FROM `default`.`src`) `default.view9` PREHOOK: query: SELECT * FROM view9 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view9 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view9 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view9 #### A masked pattern was here #### 7 PREHOOK: query: -- test usage of a subselect within a view CREATE VIEW view10 AS SELECT slurp.* FROM (SELECT * FROM src WHERE key=86) slurp PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view10 POSTHOOK: query: -- test usage of a subselect within a view CREATE VIEW view10 AS SELECT slurp.* FROM (SELECT * FROM src WHERE key=86) slurp POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view10 PREHOOK: query: DESCRIBE EXTENDED view10 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view10 POSTHOOK: query: DESCRIBE EXTENDED view10 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view10 key string value string #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view10 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view10 POSTHOOK: query: DESCRIBE FORMATTED view10 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view10 # col_name data_type comment key string value string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT slurp.* FROM (SELECT * FROM src WHERE key=86) slurp View Expanded Text: SELECT `slurp`.`key`, `slurp`.`value` FROM (SELECT `src`.`key`, `src`.`value` FROM `default`.`src` WHERE `src`.`key`=86) `slurp` PREHOOK: query: SELECT * FROM view10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view10 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view10 #### A masked pattern was here #### 86 val_86 PREHOOK: query: -- test usage of a UDTF within a view CREATE TEMPORARY FUNCTION test_explode AS 'org.apache.hadoop.hive.ql.udf.generic.GenericUDTFExplode' PREHOOK: type: CREATEFUNCTION PREHOOK: Output: test_explode POSTHOOK: query: -- test usage of a UDTF within a view CREATE TEMPORARY FUNCTION test_explode AS 'org.apache.hadoop.hive.ql.udf.generic.GenericUDTFExplode' POSTHOOK: type: CREATEFUNCTION POSTHOOK: Output: test_explode PREHOOK: query: CREATE VIEW view11 AS SELECT test_explode(array(1,2,3)) AS (boom) FROM table1 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@table1 PREHOOK: Output: database:default PREHOOK: Output: default@view11 POSTHOOK: query: CREATE VIEW view11 AS SELECT test_explode(array(1,2,3)) AS (boom) FROM table1 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@table1 POSTHOOK: Output: database:default POSTHOOK: Output: default@view11 PREHOOK: query: DESCRIBE EXTENDED view11 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view11 POSTHOOK: query: DESCRIBE EXTENDED view11 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view11 boom int #### A masked pattern was here #### FROM table1, viewExpandedText:SELECT `test_explode`(array(1,2,3)) AS (`boom`) FROM `default`.`table1`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view11 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view11 POSTHOOK: query: DESCRIBE FORMATTED view11 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view11 # col_name data_type comment boom int # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT test_explode(array(1,2,3)) AS (boom) FROM table1 View Expanded Text: SELECT `test_explode`(array(1,2,3)) AS (`boom`) FROM `default`.`table1` PREHOOK: query: SELECT * FROM view11 PREHOOK: type: QUERY PREHOOK: Input: default@table1 PREHOOK: Input: default@view11 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view11 POSTHOOK: type: QUERY POSTHOOK: Input: default@table1 POSTHOOK: Input: default@view11 #### A masked pattern was here #### 1 2 3 PREHOOK: query: -- test usage of LATERAL within a view CREATE VIEW view12 AS SELECT * FROM src LATERAL VIEW explode(array(1,2,3)) myTable AS myCol PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view12 POSTHOOK: query: -- test usage of LATERAL within a view CREATE VIEW view12 AS SELECT * FROM src LATERAL VIEW explode(array(1,2,3)) myTable AS myCol POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view12 PREHOOK: query: DESCRIBE EXTENDED view12 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view12 POSTHOOK: query: DESCRIBE EXTENDED view12 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view12 key string value string mycol int #### A masked pattern was here #### PREHOOK: query: DESCRIBE FORMATTED view12 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view12 POSTHOOK: query: DESCRIBE FORMATTED view12 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view12 # col_name data_type comment key string value string mycol int # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT * FROM src LATERAL VIEW explode(array(1,2,3)) myTable AS myCol View Expanded Text: SELECT `src`.`key`, `src`.`value`, `mytable`.`mycol` FROM `default`.`src` LATERAL VIEW explode(array(1,2,3)) `myTable` AS `myCol` PREHOOK: query: SELECT * FROM view12 ORDER BY key ASC, myCol ASC LIMIT 1 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view12 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view12 ORDER BY key ASC, myCol ASC LIMIT 1 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view12 #### A masked pattern was here #### 0 val_0 1 PREHOOK: query: -- test usage of LATERAL with a view as the LHS SELECT * FROM view2 LATERAL VIEW explode(array(1,2,3)) myTable AS myCol ORDER BY key ASC, myCol ASC LIMIT 1 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view2 #### A masked pattern was here #### POSTHOOK: query: -- test usage of LATERAL with a view as the LHS SELECT * FROM view2 LATERAL VIEW explode(array(1,2,3)) myTable AS myCol ORDER BY key ASC, myCol ASC LIMIT 1 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view2 #### A masked pattern was here #### 0 val_0 1 PREHOOK: query: -- test usage of TABLESAMPLE within a view CREATE VIEW view13 AS SELECT s.key FROM srcbucket TABLESAMPLE (BUCKET 1 OUT OF 5 ON key) s PREHOOK: type: CREATEVIEW PREHOOK: Input: default@srcbucket PREHOOK: Output: database:default PREHOOK: Output: default@view13 POSTHOOK: query: -- test usage of TABLESAMPLE within a view CREATE VIEW view13 AS SELECT s.key FROM srcbucket TABLESAMPLE (BUCKET 1 OUT OF 5 ON key) s POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@srcbucket POSTHOOK: Output: database:default POSTHOOK: Output: default@view13 PREHOOK: query: DESCRIBE EXTENDED view13 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view13 POSTHOOK: query: DESCRIBE EXTENDED view13 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view13 key int #### A masked pattern was here #### FROM srcbucket TABLESAMPLE (BUCKET 1 OUT OF 5 ON key) s, viewExpandedText:SELECT `s`.`key` FROM `default`.`srcbucket` TABLESAMPLE (BUCKET 1 OUT OF 5 ON `key`) `s`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view13 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view13 POSTHOOK: query: DESCRIBE FORMATTED view13 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view13 # col_name data_type comment key int # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT s.key FROM srcbucket TABLESAMPLE (BUCKET 1 OUT OF 5 ON key) s View Expanded Text: SELECT `s`.`key` FROM `default`.`srcbucket` TABLESAMPLE (BUCKET 1 OUT OF 5 ON `key`) `s` PREHOOK: query: SELECT * FROM view13 ORDER BY key LIMIT 12 PREHOOK: type: QUERY PREHOOK: Input: default@srcbucket PREHOOK: Input: default@view13 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view13 ORDER BY key LIMIT 12 POSTHOOK: type: QUERY POSTHOOK: Input: default@srcbucket POSTHOOK: Input: default@view13 #### A masked pattern was here #### 0 0 0 0 0 5 5 5 5 10 10 15 PREHOOK: query: -- test usage of JOIN+UNION+AGG all within same view CREATE VIEW view14 AS SELECT unionsrc1.key as k1, unionsrc1.value as v1, unionsrc2.key as k2, unionsrc2.value as v2 FROM (select 'tst1' as key, cast(count(1) as string) as value from src s1 UNION ALL select s2.key as key, s2.value as value from src s2 where s2.key < 10) unionsrc1 JOIN (select 'tst1' as key, cast(count(1) as string) as value from src s3 UNION ALL select s4.key as key, s4.value as value from src s4 where s4.key < 10) unionsrc2 ON (unionsrc1.key = unionsrc2.key) PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view14 POSTHOOK: query: -- test usage of JOIN+UNION+AGG all within same view CREATE VIEW view14 AS SELECT unionsrc1.key as k1, unionsrc1.value as v1, unionsrc2.key as k2, unionsrc2.value as v2 FROM (select 'tst1' as key, cast(count(1) as string) as value from src s1 UNION ALL select s2.key as key, s2.value as value from src s2 where s2.key < 10) unionsrc1 JOIN (select 'tst1' as key, cast(count(1) as string) as value from src s3 UNION ALL select s4.key as key, s4.value as value from src s4 where s4.key < 10) unionsrc2 ON (unionsrc1.key = unionsrc2.key) POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view14 PREHOOK: query: DESCRIBE EXTENDED view14 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view14 POSTHOOK: query: DESCRIBE EXTENDED view14 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view14 k1 string v1 string k2 string v2 string #### A masked pattern was here #### unionsrc2.key as k2, unionsrc2.value as v2 FROM (select 'tst1' as key, cast(count(1) as string) as value from src s1 UNION ALL select s2.key as key, s2.value as value from src s2 where s2.key < 10) unionsrc1 JOIN (select 'tst1' as key, cast(count(1) as string) as value from src s3 UNION ALL select s4.key as key, s4.value as value from src s4 where s4.key < 10) unionsrc2 ON (unionsrc1.key = unionsrc2.key), viewExpandedText:SELECT unionsrc1.key as `k1`, unionsrc1.value as `v1`, unionsrc2.key as `k2`, unionsrc2.value as `v2` FROM (select 'tst1' as `key`, cast(count(1) as string) as `value` from `default`.`src` `s1` UNION ALL select `s2`.`key` as `key`, `s2`.`value` as `value` from `default`.`src` `s2` where `s2`.`key` < 10) `unionsrc1` JOIN (select 'tst1' as `key`, cast(count(1) as string) as `value` from `default`.`src` `s3` UNION ALL select `s4`.`key` as `key`, `s4`.`value` as `value` from `default`.`src` `s4` where `s4`.`key` < 10) `unionsrc2` ON (`unionsrc1`.`key` = `unionsrc2`.`key`), tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view14 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view14 POSTHOOK: query: DESCRIBE FORMATTED view14 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view14 # col_name data_type comment k1 string v1 string k2 string v2 string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT unionsrc1.key as k1, unionsrc1.value as v1, unionsrc2.key as k2, unionsrc2.value as v2 FROM (select 'tst1' as key, cast(count(1) as string) as value from src s1 UNION ALL select s2.key as key, s2.value as value from src s2 where s2.key < 10) unionsrc1 JOIN (select 'tst1' as key, cast(count(1) as string) as value from src s3 UNION ALL select s4.key as key, s4.value as value from src s4 where s4.key < 10) unionsrc2 ON (unionsrc1.key = unionsrc2.key) View Expanded Text: SELECT unionsrc1.key as `k1`, unionsrc1.value as `v1`, unionsrc2.key as `k2`, unionsrc2.value as `v2` FROM (select 'tst1' as `key`, cast(count(1) as string) as `value` from `default`.`src` `s1` UNION ALL select `s2`.`key` as `key`, `s2`.`value` as `value` from `default`.`src` `s2` where `s2`.`key` < 10) `unionsrc1` JOIN (select 'tst1' as `key`, cast(count(1) as string) as `value` from `default`.`src` `s3` UNION ALL select `s4`.`key` as `key`, `s4`.`value` as `value` from `default`.`src` `s4` where `s4`.`key` < 10) `unionsrc2` ON (`unionsrc1`.`key` = `unionsrc2`.`key`) PREHOOK: query: SELECT * FROM view14 ORDER BY k1 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view14 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view14 ORDER BY k1 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view14 #### A masked pattern was here #### 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 0 val_0 2 val_2 2 val_2 4 val_4 4 val_4 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 5 val_5 8 val_8 8 val_8 9 val_9 9 val_9 tst1 500 tst1 500 PREHOOK: query: -- test usage of GROUP BY within view CREATE VIEW view15 AS SELECT key,COUNT(value) AS value_count FROM src GROUP BY key PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view15 POSTHOOK: query: -- test usage of GROUP BY within view CREATE VIEW view15 AS SELECT key,COUNT(value) AS value_count FROM src GROUP BY key POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view15 PREHOOK: query: DESCRIBE EXTENDED view15 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view15 POSTHOOK: query: DESCRIBE EXTENDED view15 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view15 key string value_count bigint #### A masked pattern was here #### FROM src GROUP BY key, viewExpandedText:SELECT `src`.`key`,COUNT(`src`.`value`) AS `value_count` FROM `default`.`src` GROUP BY `src`.`key`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view15 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view15 POSTHOOK: query: DESCRIBE FORMATTED view15 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view15 # col_name data_type comment key string value_count bigint # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT key,COUNT(value) AS value_count FROM src GROUP BY key View Expanded Text: SELECT `src`.`key`,COUNT(`src`.`value`) AS `value_count` FROM `default`.`src` GROUP BY `src`.`key` PREHOOK: query: SELECT * FROM view15 ORDER BY value_count DESC, key LIMIT 10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view15 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view15 ORDER BY value_count DESC, key LIMIT 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view15 #### A masked pattern was here #### 230 5 348 5 401 5 469 5 138 4 169 4 277 4 406 4 468 4 489 4 PREHOOK: query: -- test usage of DISTINCT within view CREATE VIEW view16 AS SELECT DISTINCT value FROM src PREHOOK: type: CREATEVIEW PREHOOK: Input: default@src PREHOOK: Output: database:default PREHOOK: Output: default@view16 POSTHOOK: query: -- test usage of DISTINCT within view CREATE VIEW view16 AS SELECT DISTINCT value FROM src POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@src POSTHOOK: Output: database:default POSTHOOK: Output: default@view16 PREHOOK: query: DESCRIBE EXTENDED view16 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view16 POSTHOOK: query: DESCRIBE EXTENDED view16 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view16 value string #### A masked pattern was here #### FROM src, viewExpandedText:SELECT DISTINCT `src`.`value` FROM `default`.`src`, tableType:VIRTUAL_VIEW) PREHOOK: query: DESCRIBE FORMATTED view16 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view16 POSTHOOK: query: DESCRIBE FORMATTED view16 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view16 # col_name data_type comment value string # Detailed Table Information Database: default #### A masked pattern was here #### Protect Mode: None Retention: 0 Table Type: VIRTUAL_VIEW Table Parameters: #### A masked pattern was here #### # Storage Information SerDe Library: null InputFormat: org.apache.hadoop.mapred.SequenceFileInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] # View Information View Original Text: SELECT DISTINCT value FROM src View Expanded Text: SELECT DISTINCT `src`.`value` FROM `default`.`src` PREHOOK: query: SELECT * FROM view16 ORDER BY value LIMIT 10 PREHOOK: type: QUERY PREHOOK: Input: default@src PREHOOK: Input: default@view16 #### A masked pattern was here #### POSTHOOK: query: SELECT * FROM view16 ORDER BY value LIMIT 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@view16 #### A masked pattern was here #### val_0 val_10 val_100 val_103 val_104 val_105 val_11 val_111 val_113 val_114 PREHOOK: query: -- HIVE-2133: DROP TABLE IF EXISTS should ignore a matching view name DROP TABLE IF EXISTS view16 PREHOOK: type: DROPTABLE PREHOOK: Input: default@view16 PREHOOK: Output: default@view16 POSTHOOK: query: -- HIVE-2133: DROP TABLE IF EXISTS should ignore a matching view name DROP TABLE IF EXISTS view16 POSTHOOK: type: DROPTABLE POSTHOOK: Input: default@view16 POSTHOOK: Output: default@view16 PREHOOK: query: DESCRIBE view16 PREHOOK: type: DESCTABLE PREHOOK: Input: default@view16 POSTHOOK: query: DESCRIBE view16 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@view16 value string PREHOOK: query: -- Likewise, DROP VIEW IF EXISTS should ignore a matching table name DROP VIEW IF EXISTS table1 PREHOOK: type: DROPVIEW PREHOOK: Input: default@table1 PREHOOK: Output: default@table1 POSTHOOK: query: -- Likewise, DROP VIEW IF EXISTS should ignore a matching table name DROP VIEW IF EXISTS table1 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@table1 POSTHOOK: Output: default@table1 PREHOOK: query: DESCRIBE table1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@table1 POSTHOOK: query: DESCRIBE table1 POSTHOOK: type: DESCTABLE POSTHOOK: Input: default@table1 key int value string PREHOOK: query: -- this should work since currently we don't track view->table -- dependencies for implementing RESTRICT DROP VIEW view1 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view1 PREHOOK: Output: default@view1 POSTHOOK: query: -- this should work since currently we don't track view->table -- dependencies for implementing RESTRICT DROP VIEW view1 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view1 POSTHOOK: Output: default@view1 PREHOOK: query: DROP VIEW view2 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view2 PREHOOK: Output: default@view2 POSTHOOK: query: DROP VIEW view2 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view2 POSTHOOK: Output: default@view2 PREHOOK: query: DROP VIEW view3 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view3 PREHOOK: Output: default@view3 POSTHOOK: query: DROP VIEW view3 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view3 POSTHOOK: Output: default@view3 PREHOOK: query: DROP VIEW view4 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view4 PREHOOK: Output: default@view4 POSTHOOK: query: DROP VIEW view4 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view4 POSTHOOK: Output: default@view4 PREHOOK: query: DROP VIEW view5 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view5 PREHOOK: Output: default@view5 POSTHOOK: query: DROP VIEW view5 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view5 POSTHOOK: Output: default@view5 PREHOOK: query: DROP VIEW view6 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view6 PREHOOK: Output: default@view6 POSTHOOK: query: DROP VIEW view6 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view6 POSTHOOK: Output: default@view6 PREHOOK: query: DROP VIEW view7 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view7 PREHOOK: Output: default@view7 POSTHOOK: query: DROP VIEW view7 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view7 POSTHOOK: Output: default@view7 PREHOOK: query: DROP VIEW view8 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view8 PREHOOK: Output: default@view8 POSTHOOK: query: DROP VIEW view8 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view8 POSTHOOK: Output: default@view8 PREHOOK: query: DROP VIEW view9 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view9 PREHOOK: Output: default@view9 POSTHOOK: query: DROP VIEW view9 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view9 POSTHOOK: Output: default@view9 PREHOOK: query: DROP VIEW view10 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view10 PREHOOK: Output: default@view10 POSTHOOK: query: DROP VIEW view10 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view10 POSTHOOK: Output: default@view10 PREHOOK: query: DROP VIEW view11 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view11 PREHOOK: Output: default@view11 POSTHOOK: query: DROP VIEW view11 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view11 POSTHOOK: Output: default@view11 PREHOOK: query: DROP VIEW view12 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view12 PREHOOK: Output: default@view12 POSTHOOK: query: DROP VIEW view12 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view12 POSTHOOK: Output: default@view12 PREHOOK: query: DROP VIEW view13 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view13 PREHOOK: Output: default@view13 POSTHOOK: query: DROP VIEW view13 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view13 POSTHOOK: Output: default@view13 PREHOOK: query: DROP VIEW view14 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view14 PREHOOK: Output: default@view14 POSTHOOK: query: DROP VIEW view14 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view14 POSTHOOK: Output: default@view14 PREHOOK: query: DROP VIEW view15 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view15 PREHOOK: Output: default@view15 POSTHOOK: query: DROP VIEW view15 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view15 POSTHOOK: Output: default@view15 PREHOOK: query: DROP VIEW view16 PREHOOK: type: DROPVIEW PREHOOK: Input: default@view16 PREHOOK: Output: default@view16 POSTHOOK: query: DROP VIEW view16 POSTHOOK: type: DROPVIEW POSTHOOK: Input: default@view16 POSTHOOK: Output: default@view16 PREHOOK: query: DROP TEMPORARY FUNCTION test_translate PREHOOK: type: DROPFUNCTION PREHOOK: Output: test_translate POSTHOOK: query: DROP TEMPORARY FUNCTION test_translate POSTHOOK: type: DROPFUNCTION POSTHOOK: Output: test_translate PREHOOK: query: DROP TEMPORARY FUNCTION test_max PREHOOK: type: DROPFUNCTION PREHOOK: Output: test_max POSTHOOK: query: DROP TEMPORARY FUNCTION test_max POSTHOOK: type: DROPFUNCTION POSTHOOK: Output: test_max PREHOOK: query: DROP TEMPORARY FUNCTION test_explode PREHOOK: type: DROPFUNCTION PREHOOK: Output: test_explode POSTHOOK: query: DROP TEMPORARY FUNCTION test_explode POSTHOOK: type: DROPFUNCTION POSTHOOK: Output: test_explode