diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java index ac9df5e..5b87e29 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java @@ -421,28 +421,6 @@ public static void setTaskPlan(String alias_id, setTaskPlan(alias_id, topOp, task, local, opProcCtx, null); } - private static ReadEntity getParentViewInfo(String alias_id, - Map viewAliasToInput) { - String[] aliases = alias_id.split(":"); - - String currentAlias = null; - ReadEntity currentInput = null; - // Find the immediate parent possible. - // For eg: for a query like 'select * from V3', where V3 -> V2, V2 -> V1, V1 -> T - // -> implies depends on. - // T's parent would be V1 - for (int pos = 0; pos < aliases.length; pos++) { - currentAlias = currentAlias == null ? aliases[pos] : currentAlias + ":" + aliases[pos]; - ReadEntity input = viewAliasToInput.get(currentAlias); - if (input == null) { - return currentInput; - } - currentInput = input; - } - - return currentInput; - } - /** * set the current task in the mapredWork. * @@ -572,7 +550,8 @@ public static void setMapWork(MapWork plan, ParseContext parseCtx, Set viewToInput = parseCtx.getViewAliasToInput(); + ReadEntity parentViewInfo = PlanUtils.getParentViewInfo(alias_id, viewToInput); // The table should also be considered a part of inputs, even if the table is a // partitioned table and whether any partition is selected or not diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/SimpleFetchOptimizer.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/SimpleFetchOptimizer.java index 5e8dc41..7413d2b 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/SimpleFetchOptimizer.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/SimpleFetchOptimizer.java @@ -155,8 +155,9 @@ private FetchData checkTree(boolean aggressive, ParseContext pctx, String alias, if (table == null) { return null; } + ReadEntity parent = PlanUtils.getParentViewInfo(alias, pctx.getViewAliasToInput()); if (!table.isPartitioned()) { - return checkOperators(new FetchData(table, splitSample), ts, aggressive, false); + return checkOperators(new FetchData(parent, table, splitSample), ts, aggressive, false); } boolean bypassFilter = false; @@ -168,7 +169,7 @@ private FetchData checkTree(boolean aggressive, ParseContext pctx, String alias, PrunedPartitionList pruned = pctx.getPrunedPartitions(alias, ts); if (aggressive || !pruned.hasUnknownPartitions()) { bypassFilter &= !pruned.hasUnknownPartitions(); - return checkOperators(new FetchData(table, pruned, splitSample), ts, + return checkOperators(new FetchData(parent, table, pruned, splitSample), ts, aggressive, bypassFilter); } } @@ -205,6 +206,7 @@ private FetchData checkOperators(FetchData fetch, TableScanOperator ts, boolean private class FetchData { + private final ReadEntity parent; private final Table table; private final SplitSample splitSample; private final PrunedPartitionList partsList; @@ -216,13 +218,16 @@ private FetchData checkOperators(FetchData fetch, TableScanOperator ts, boolean // this is always non-null when conversion is completed private Operator fileSink; - private FetchData(Table table, SplitSample splitSample) { + private FetchData(ReadEntity parent, Table table, SplitSample splitSample) { + this.parent = parent; this.table = table; this.partsList = null; this.splitSample = splitSample; } - private FetchData(Table table, PrunedPartitionList partsList, SplitSample splitSample) { + private FetchData(ReadEntity parent, Table table, PrunedPartitionList partsList, + SplitSample splitSample) { + this.parent = parent; this.table = table; this.partsList = partsList; this.splitSample = splitSample; @@ -231,7 +236,7 @@ private FetchData(Table table, PrunedPartitionList partsList, SplitSample splitS private FetchWork convertToWork() throws HiveException { inputs.clear(); if (!table.isPartitioned()) { - inputs.add(new ReadEntity(table)); + inputs.add(new ReadEntity(table, parent)); FetchWork work = new FetchWork(table.getPath(), Utilities.getTableDesc(table)); PlanUtils.configureInputJobPropertiesForStorageHandler(work.getTblDesc()); work.setSplitSample(splitSample); @@ -241,12 +246,12 @@ private FetchWork convertToWork() throws HiveException { List partP = new ArrayList(); for (Partition partition : partsList.getNotDeniedPartns()) { - inputs.add(new ReadEntity(partition)); + inputs.add(new ReadEntity(partition, parent)); listP.add(partition.getDataLocation()); partP.add(Utilities.getPartitionDesc(partition)); } Table sourceTable = partsList.getSourceTable(); - inputs.add(new ReadEntity(sourceTable)); + inputs.add(new ReadEntity(sourceTable, parent)); TableDesc table = Utilities.getTableDesc(sourceTable); FetchWork work = new FetchWork(listP, partP, table); if (!work.getPartDesc().isEmpty()) { @@ -261,7 +266,9 @@ private FetchWork convertToWork() throws HiveException { // single direct fetching, which means FS is not needed any more when conversion completed. // rows forwarded will be received by ListSinkOperator, which is replacing FS private ListSinkOperator completed(ParseContext pctx, FetchWork work) { - pctx.getSemanticInputs().addAll(inputs); + for (ReadEntity input : inputs) { + PlanUtils.addInput(pctx.getSemanticInputs(), input); + } return replaceFSwithLS(fileSink, work.getSerializationNullFormat()); } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index 9050bf5..5e1ab5d 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -8905,6 +8905,15 @@ public void analyzeInternal(ASTNode ast) throws SemanticException { resultSchema = convertRowSchemaToViewSchema(opParseCtx.get(sinkOp).getRowResolver()); + ParseContext pCtx = new ParseContext(conf, qb, child, opToPartPruner, + opToPartList, topOps, topSelOps, opParseCtx, joinContext, smbMapJoinContext, + topToTable, topToTableProps, fsopToTable, + loadTableWork, loadFileWork, ctx, idToTableNameMap, destTableId, uCtx, + listMapJoinOpsNoReducer, groupOpToInputTables, prunedPartitions, + opToSamplePruner, globalLimitCtx, nameToSplitSample, inputs, rootTasks, + opToPartToSkewedPruner, viewAliasToInput, + reduceSinkOperatorsAddedByEnforceBucketingSorting, queryProperties); + if (createVwDesc != null) { saveViewDefinition(); @@ -8918,18 +8927,15 @@ public void analyzeInternal(ASTNode ast) throws SemanticException { // skip the rest of this method. ctx.setResDir(null); ctx.setResFile(null); + + try { + PlanUtils.addInputsForView(pCtx); + } catch (HiveException e) { + throw new SemanticException(e); + } return; } - ParseContext pCtx = new ParseContext(conf, qb, child, opToPartPruner, - opToPartList, topOps, topSelOps, opParseCtx, joinContext, smbMapJoinContext, - topToTable, topToTableProps, fsopToTable, - loadTableWork, loadFileWork, ctx, idToTableNameMap, destTableId, uCtx, - listMapJoinOpsNoReducer, groupOpToInputTables, prunedPartitions, - opToSamplePruner, globalLimitCtx, nameToSplitSample, inputs, rootTasks, - opToPartToSkewedPruner, viewAliasToInput, - reduceSinkOperatorsAddedByEnforceBucketingSorting, queryProperties); - // Generate table access stats if required if (HiveConf.getBoolVar(this.conf, HiveConf.ConfVars.HIVE_STATS_COLLECT_TABLEKEYS) == true) { TableAccessAnalyzer tableAccessAnalyzer = new TableAccessAnalyzer(pCtx); diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java index fe88a50..ba376b9 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java @@ -70,8 +70,8 @@ DROPFUNCTION("DROPFUNCTION", null, null), CREATEMACRO("CREATEMACRO", null, null), DROPMACRO("DROPMACRO", null, null), - CREATEVIEW("CREATEVIEW", null, null), - DROPVIEW("DROPVIEW", null, null), + CREATEVIEW("CREATEVIEW", new Privilege[]{Privilege.SELECT}, new Privilege[]{Privilege.CREATE}), + DROPVIEW("DROPVIEW", null, new Privilege[]{Privilege.DROP}), CREATEINDEX("CREATEINDEX", null, null), DROPINDEX("DROPINDEX", null, null), ALTERINDEX_REBUILD("ALTERINDEX_REBUILD", null, null), diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java index 6ee6bee..b1ebf67 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java @@ -35,7 +35,9 @@ import org.apache.hadoop.hive.metastore.MetaStoreUtils; import org.apache.hadoop.hive.metastore.api.FieldSchema; import org.apache.hadoop.hive.ql.exec.ColumnInfo; +import org.apache.hadoop.hive.ql.exec.Operator; import org.apache.hadoop.hive.ql.exec.RowSchema; +import org.apache.hadoop.hive.ql.exec.TableScanOperator; import org.apache.hadoop.hive.ql.exec.Utilities; import org.apache.hadoop.hive.ql.hooks.ReadEntity; import org.apache.hadoop.hive.ql.io.HiveFileFormatUtils; @@ -48,6 +50,8 @@ import org.apache.hadoop.hive.ql.metadata.HiveException; import org.apache.hadoop.hive.ql.metadata.HiveStorageHandler; import org.apache.hadoop.hive.ql.metadata.HiveUtils; +import org.apache.hadoop.hive.ql.metadata.Table; +import org.apache.hadoop.hive.ql.parse.ParseContext; import org.apache.hadoop.hive.ql.parse.SemanticException; import org.apache.hadoop.hive.ql.parse.TypeCheckProcFactory; import org.apache.hadoop.hive.ql.session.SessionState; @@ -906,4 +910,42 @@ public static ReadEntity addInput(Set inputs, ReadEntity newInput) { // make compile happy return null; } + + public static void addInputsForView(ParseContext parseCtx) throws HiveException { + Set inputs = parseCtx.getSemanticInputs(); + for (Map.Entry> entry : parseCtx.getTopOps().entrySet()) { + if (!(entry.getValue() instanceof TableScanOperator)) { + continue; + } + String alias = entry.getKey(); + TableScanOperator topOp = (TableScanOperator) entry.getValue(); + ReadEntity parentViewInfo = getParentViewInfo(alias, parseCtx.getViewAliasToInput()); + + // Adds tables only for create view (PPD filter can be appended by outer query) + Table table = parseCtx.getTopToTable().get(topOp); + PlanUtils.addInput(inputs, new ReadEntity(table, parentViewInfo)); + } + } + + public static ReadEntity getParentViewInfo(String alias_id, + Map viewAliasToInput) { + String[] aliases = alias_id.split(":"); + + String currentAlias = null; + ReadEntity currentInput = null; + // Find the immediate parent possible. + // For eg: for a query like 'select * from V3', where V3 -> V2, V2 -> V1, V1 -> T + // -> implies depends on. + // T's parent would be V1 + for (int pos = 0; pos < aliases.length; pos++) { + currentAlias = currentAlias == null ? aliases[pos] : currentAlias + ":" + aliases[pos]; + ReadEntity input = viewAliasToInput.get(currentAlias); + if (input == null) { + return currentInput; + } + currentInput = input; + } + + return currentInput; + } } diff --git ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out index 291d7fb..ddc3496 100644 --- ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out +++ ql/src/test/results/clientnegative/alter_view_as_select_with_partition.q.out @@ -4,12 +4,14 @@ SELECT key, value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW testViewPart PARTITIONED ON (value) AS SELECT key, value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@testViewPart PREHOOK: query: ALTER VIEW testViewPart ADD PARTITION (value='val_86') PARTITION (value='val_xyz') diff --git ql/src/test/results/clientnegative/alter_view_failure.q.out ql/src/test/results/clientnegative/alter_view_failure.q.out index 4bda31e..d52f72a 100644 --- ql/src/test/results/clientnegative/alter_view_failure.q.out +++ ql/src/test/results/clientnegative/alter_view_failure.q.out @@ -4,7 +4,9 @@ POSTHOOK: query: DROP VIEW xxx3 POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW xxx3 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx3 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx3 FAILED: SemanticException [Error 10131]: To alter a view you need to use the ALTER VIEW command. diff --git ql/src/test/results/clientnegative/alter_view_failure2.q.out ql/src/test/results/clientnegative/alter_view_failure2.q.out index a27094a..4e25874 100644 --- ql/src/test/results/clientnegative/alter_view_failure2.q.out +++ ql/src/test/results/clientnegative/alter_view_failure2.q.out @@ -7,10 +7,12 @@ PARTITIONED ON (value) AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx4 PARTITIONED ON (value) AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx4 FAILED: SemanticException [Error 10131]: To alter a view you need to use the ALTER VIEW command. diff --git ql/src/test/results/clientnegative/alter_view_failure4.q.out ql/src/test/results/clientnegative/alter_view_failure4.q.out index b218c19..737c23e 100644 --- ql/src/test/results/clientnegative/alter_view_failure4.q.out +++ ql/src/test/results/clientnegative/alter_view_failure4.q.out @@ -7,11 +7,13 @@ PARTITIONED ON (value) AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx5 PARTITIONED ON (value) AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx5 PREHOOK: query: -- should fail: LOCATION clause is illegal #### A masked pattern was here #### diff --git ql/src/test/results/clientnegative/alter_view_failure5.q.out ql/src/test/results/clientnegative/alter_view_failure5.q.out index 83511ee..ff19f65 100644 --- ql/src/test/results/clientnegative/alter_view_failure5.q.out +++ ql/src/test/results/clientnegative/alter_view_failure5.q.out @@ -7,10 +7,12 @@ PARTITIONED ON (value) AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx6 PARTITIONED ON (value) AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx6 FAILED: SemanticException [Error 10098]: Non-Partition column appears in the partition specification: v diff --git ql/src/test/results/clientnegative/alter_view_failure6.q.out ql/src/test/results/clientnegative/alter_view_failure6.q.out index 0274e0b..cfbaca8 100644 --- ql/src/test/results/clientnegative/alter_view_failure6.q.out +++ ql/src/test/results/clientnegative/alter_view_failure6.q.out @@ -7,11 +7,13 @@ PARTITIONED ON (key) AS SELECT hr,key FROM srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: CREATE VIEW xxx7 PARTITIONED ON (key) AS SELECT hr,key FROM srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@xxx7 FAILED: SemanticException [Error 10041]: No partition predicate found for Alias "xxx7:srcpart" Table "srcpart" FAILED: SemanticException [Error 10056]: The query does not reference any valid partition. To run this query, set hive.mapred.mode=nonstrict diff --git ql/src/test/results/clientnegative/alter_view_failure7.q.out ql/src/test/results/clientnegative/alter_view_failure7.q.out index e2967b1..3590c6a 100644 --- ql/src/test/results/clientnegative/alter_view_failure7.q.out +++ ql/src/test/results/clientnegative/alter_view_failure7.q.out @@ -7,10 +7,12 @@ PARTITIONED ON (ds,hr) AS SELECT key,ds,hr FROM srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: CREATE VIEW xxx8 PARTITIONED ON (ds,hr) AS SELECT key,ds,hr FROM srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@xxx8 FAILED: SemanticException [Error 10214]: Invalid partition spec specified table is partitioned but partition spec is not specified or does not fully match table partitioning: {ds=2011-01-01} diff --git ql/src/test/results/clientnegative/alter_view_failure9.q.out ql/src/test/results/clientnegative/alter_view_failure9.q.out index 6003d7d..398718b 100644 --- ql/src/test/results/clientnegative/alter_view_failure9.q.out +++ ql/src/test/results/clientnegative/alter_view_failure9.q.out @@ -6,9 +6,11 @@ PREHOOK: query: CREATE VIEW xxx4 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx4 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx4 FAILED: SemanticException [Error 10131]: To alter a view you need to use the ALTER VIEW command. diff --git ql/src/test/results/clientnegative/analyze_view.q.out ql/src/test/results/clientnegative/analyze_view.q.out index c321543..6ed1e18 100644 --- ql/src/test/results/clientnegative/analyze_view.q.out +++ ql/src/test/results/clientnegative/analyze_view.q.out @@ -4,7 +4,9 @@ POSTHOOK: query: DROP VIEW av POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW av AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW av AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@av FAILED: SemanticException [Error 10091]: ANALYZE is not supported for views diff --git ql/src/test/results/clientnegative/create_or_replace_view1.q.out ql/src/test/results/clientnegative/create_or_replace_view1.q.out index 65b3ef7..8c5d100 100644 --- ql/src/test/results/clientnegative/create_or_replace_view1.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view1.q.out @@ -8,8 +8,10 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: alter view v add partition (ds='1',hr='2') PREHOOK: type: ALTERTABLE_ADDPARTS diff --git ql/src/test/results/clientnegative/create_or_replace_view2.q.out ql/src/test/results/clientnegative/create_or_replace_view2.q.out index a26c8b3..1c4430e 100644 --- ql/src/test/results/clientnegative/create_or_replace_view2.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view2.q.out @@ -8,8 +8,10 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: alter view v add partition (ds='1',hr='2') PREHOOK: type: ALTERTABLE_ADDPARTS diff --git ql/src/test/results/clientnegative/create_or_replace_view4.q.out ql/src/test/results/clientnegative/create_or_replace_view4.q.out index a1d158f..49ebe84 100644 --- ql/src/test/results/clientnegative/create_or_replace_view4.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view4.q.out @@ -8,7 +8,9 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v FAILED: SemanticException [Error 10092]: At least one non-partitioning column must be present in view diff --git ql/src/test/results/clientnegative/create_or_replace_view5.q.out ql/src/test/results/clientnegative/create_or_replace_view5.q.out index 03576fb..ddac913 100644 --- ql/src/test/results/clientnegative/create_or_replace_view5.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view5.q.out @@ -8,7 +8,9 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v FAILED: SemanticException Can't combine IF NOT EXISTS and OR REPLACE. diff --git ql/src/test/results/clientnegative/create_or_replace_view6.q.out ql/src/test/results/clientnegative/create_or_replace_view6.q.out index 447dc2f..486dbb9 100644 --- ql/src/test/results/clientnegative/create_or_replace_view6.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view6.q.out @@ -8,7 +8,9 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v FAILED: ParseException line 2:52 cannot recognize input near 'blah' '' '' in select clause diff --git ql/src/test/results/clientnegative/create_or_replace_view7.q.out ql/src/test/results/clientnegative/create_or_replace_view7.q.out index 0abfc3d..2282480 100644 --- ql/src/test/results/clientnegative/create_or_replace_view7.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view7.q.out @@ -8,22 +8,28 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v1 partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v1 partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v1 PREHOOK: query: create view v2 partitioned on (ds, hr) as select * from v1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v1 POSTHOOK: query: create view v2 partitioned on (ds, hr) as select * from v1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v1 POSTHOOK: Output: default@v2 PREHOOK: query: create view v3 partitioned on (ds, hr) as select * from v2 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v1 PREHOOK: Input: default@v2 POSTHOOK: query: create view v3 partitioned on (ds, hr) as select * from v2 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v1 POSTHOOK: Input: default@v2 POSTHOOK: Output: default@v3 diff --git ql/src/test/results/clientnegative/create_or_replace_view8.q.out ql/src/test/results/clientnegative/create_or_replace_view8.q.out index a46ce12..ea0310b 100644 --- ql/src/test/results/clientnegative/create_or_replace_view8.q.out +++ ql/src/test/results/clientnegative/create_or_replace_view8.q.out @@ -8,7 +8,9 @@ drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v1 partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v1 partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v1 FAILED: SemanticException Recursive view default.v1 detected (cycle: default.v1 -> default.v1). diff --git ql/src/test/results/clientnegative/create_view_failure1.q.out ql/src/test/results/clientnegative/create_view_failure1.q.out index 75d83a5..406a5df 100644 --- ql/src/test/results/clientnegative/create_view_failure1.q.out +++ ql/src/test/results/clientnegative/create_view_failure1.q.out @@ -11,4 +11,5 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@xxx12 PREHOOK: query: CREATE VIEW xxx12 AS SELECT key FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. AlreadyExistsException(message:Table xxx12 already exists) diff --git ql/src/test/results/clientnegative/create_view_failure2.q.out ql/src/test/results/clientnegative/create_view_failure2.q.out index e7bde22..f7964a9 100644 --- ql/src/test/results/clientnegative/create_view_failure2.q.out +++ ql/src/test/results/clientnegative/create_view_failure2.q.out @@ -5,9 +5,11 @@ POSTHOOK: type: DROPVIEW PREHOOK: query: -- views and tables share the same namespace CREATE VIEW xxx4 AS SELECT key FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- views and tables share the same namespace CREATE VIEW xxx4 AS SELECT key FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx4 PREHOOK: query: CREATE TABLE xxx4(key int) PREHOOK: type: CREATETABLE diff --git ql/src/test/results/clientnegative/create_view_failure4.q.out ql/src/test/results/clientnegative/create_view_failure4.q.out index 9b0fa96..339eb04 100644 --- ql/src/test/results/clientnegative/create_view_failure4.q.out +++ ql/src/test/results/clientnegative/create_view_failure4.q.out @@ -6,4 +6,5 @@ PREHOOK: query: -- duplicate column names are illegal CREATE VIEW xxx5(x,x) AS SELECT key,value FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org.apache.hadoop.hive.ql.metadata.HiveException: Duplicate column name x in the table definition. diff --git ql/src/test/results/clientnegative/deletejar.q.out ql/src/test/results/clientnegative/deletejar.q.out index b873e34..e941f79 100644 --- ql/src/test/results/clientnegative/deletejar.q.out +++ ql/src/test/results/clientnegative/deletejar.q.out @@ -1,3 +1,2 @@ -PREHOOK: query: CREATE TABLE DELETEJAR(KEY STRING, VALUE STRING) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.TestSerDe' STORED AS TEXTFILE -PREHOOK: type: CREATETABLE -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Cannot validate serde: org.apache.hadoop.hive.serde2.TestSerDe +/home/navis/.m2/repository/org/apache/hive/hive-it-test-serde/0.13.0-SNAPSHOT/hive-it-test-serde-0.13.0-SNAPSHOT.jar does not exist +Query returned non-zero code: 1, cause: /home/navis/.m2/repository/org/apache/hive/hive-it-test-serde/0.13.0-SNAPSHOT/hive-it-test-serde-0.13.0-SNAPSHOT.jar does not exist. diff --git ql/src/test/results/clientnegative/drop_table_failure2.q.out ql/src/test/results/clientnegative/drop_table_failure2.q.out index 7681716..adad9f4 100644 --- ql/src/test/results/clientnegative/drop_table_failure2.q.out +++ ql/src/test/results/clientnegative/drop_table_failure2.q.out @@ -1,7 +1,9 @@ PREHOOK: query: CREATE VIEW xxx6 AS SELECT key FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx6 AS SELECT key FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx6 PREHOOK: query: -- Can't use DROP TABLE on a view DROP TABLE xxx6 diff --git ql/src/test/results/clientnegative/insert_view_failure.q.out ql/src/test/results/clientnegative/insert_view_failure.q.out index 0e43ee9..05d0b75 100644 --- ql/src/test/results/clientnegative/insert_view_failure.q.out +++ ql/src/test/results/clientnegative/insert_view_failure.q.out @@ -4,7 +4,9 @@ POSTHOOK: query: DROP VIEW xxx2 POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW xxx2 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx2 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx2 FAILED: SemanticException [Error 10090]: A view cannot be used as target table for LOAD or INSERT diff --git ql/src/test/results/clientnegative/invalidate_view1.q.out ql/src/test/results/clientnegative/invalidate_view1.q.out index c322777..fdc6053 100644 --- ql/src/test/results/clientnegative/invalidate_view1.q.out +++ ql/src/test/results/clientnegative/invalidate_view1.q.out @@ -19,14 +19,18 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@xxx10 PREHOOK: query: CREATE VIEW xxx9 AS SELECT * FROM xxx10 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@xxx10 POSTHOOK: query: CREATE VIEW xxx9 AS SELECT * FROM xxx10 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@xxx10 POSTHOOK: Output: default@xxx9 PREHOOK: query: CREATE VIEW xxx8 AS SELECT * FROM xxx9 xxx PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@xxx10 PREHOOK: Input: default@xxx9 POSTHOOK: query: CREATE VIEW xxx8 AS SELECT * FROM xxx9 xxx POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@xxx10 POSTHOOK: Input: default@xxx9 POSTHOOK: Output: default@xxx8 PREHOOK: query: ALTER TABLE xxx10 REPLACE COLUMNS (key int) diff --git ql/src/test/results/clientnegative/load_view_failure.q.out ql/src/test/results/clientnegative/load_view_failure.q.out index 68223f0..d21c9bf 100644 --- ql/src/test/results/clientnegative/load_view_failure.q.out +++ ql/src/test/results/clientnegative/load_view_failure.q.out @@ -4,7 +4,9 @@ POSTHOOK: query: DROP VIEW xxx11 POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW xxx11 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW xxx11 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@xxx11 FAILED: SemanticException [Error 10090]: A view cannot be used as target table for LOAD or INSERT diff --git ql/src/test/results/clientnegative/recursive_view.q.out ql/src/test/results/clientnegative/recursive_view.q.out index 1171fa8..94b968b 100644 --- ql/src/test/results/clientnegative/recursive_view.q.out +++ ql/src/test/results/clientnegative/recursive_view.q.out @@ -29,35 +29,43 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@t PREHOOK: query: create view r0 as select * from t PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@t POSTHOOK: query: create view r0 as select * from t POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@t POSTHOOK: Output: default@r0 PREHOOK: query: create view r1 as select * from r0 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@r0 +PREHOOK: Input: default@t POSTHOOK: query: create view r1 as select * from r0 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@r0 +POSTHOOK: Input: default@t POSTHOOK: Output: default@r1 PREHOOK: query: create view r2 as select * from r1 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@r0 PREHOOK: Input: default@r1 +PREHOOK: Input: default@t POSTHOOK: query: create view r2 as select * from r1 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@r0 POSTHOOK: Input: default@r1 +POSTHOOK: Input: default@t POSTHOOK: Output: default@r2 PREHOOK: query: create view r3 as select * from r2 PREHOOK: type: CREATEVIEW PREHOOK: Input: default@r0 PREHOOK: Input: default@r1 PREHOOK: Input: default@r2 +PREHOOK: Input: default@t POSTHOOK: query: create view r3 as select * from r2 POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@r0 POSTHOOK: Input: default@r1 POSTHOOK: Input: default@r2 +POSTHOOK: Input: default@t POSTHOOK: Output: default@r3 PREHOOK: query: drop view r0 PREHOOK: type: DROPVIEW diff --git ql/src/test/results/clientnegative/unset_view_property.q.out ql/src/test/results/clientnegative/unset_view_property.q.out index 1e15b47..46860b3 100644 --- ql/src/test/results/clientnegative/unset_view_property.q.out +++ ql/src/test/results/clientnegative/unset_view_property.q.out @@ -1,7 +1,9 @@ PREHOOK: query: CREATE VIEW testView AS SELECT value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW testView AS SELECT value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@testView PREHOOK: query: ALTER VIEW testView SET TBLPROPERTIES ('propA'='100', 'propB'='200') PREHOOK: type: ALTERVIEW_PROPERTIES diff --git ql/src/test/results/clientpositive/alter_view_as_select.q.out ql/src/test/results/clientpositive/alter_view_as_select.q.out index 41f95c1..686ceb3 100644 --- ql/src/test/results/clientpositive/alter_view_as_select.q.out +++ ql/src/test/results/clientpositive/alter_view_as_select.q.out @@ -4,8 +4,10 @@ POSTHOOK: query: DROP VIEW testView POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW testView as SELECT * FROM srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: CREATE VIEW testView as SELECT * FROM srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@testView PREHOOK: query: DESCRIBE FORMATTED testView PREHOOK: type: DESCTABLE @@ -41,8 +43,10 @@ View Original Text: SELECT * FROM srcpart View Expanded Text: SELECT `srcpart`.`key`, `srcpart`.`value`, `srcpart`.`ds`, `srcpart`.`hr` FROM `default`.`srcpart` PREHOOK: query: ALTER VIEW testView AS SELECT value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: ALTER VIEW testView AS SELECT value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@testview PREHOOK: query: DESCRIBE FORMATTED testView PREHOOK: type: DESCTABLE @@ -79,12 +83,14 @@ WHERE key > 80 AND key < 100 ORDER BY key, value LIMIT 10 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: ALTER VIEW testView 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: default@testview PREHOOK: query: DESCRIBE FORMATTED testView PREHOOK: type: DESCTABLE diff --git ql/src/test/results/clientpositive/alter_view_rename.q.out ql/src/test/results/clientpositive/alter_view_rename.q.out index d6838f5..1c664f4 100644 --- ql/src/test/results/clientpositive/alter_view_rename.q.out +++ ql/src/test/results/clientpositive/alter_view_rename.q.out @@ -5,8 +5,10 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@invites PREHOOK: query: CREATE VIEW view1 as SELECT * FROM invites PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@invites POSTHOOK: query: CREATE VIEW view1 as SELECT * FROM invites POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@invites POSTHOOK: Output: default@view1 PREHOOK: query: DESCRIBE EXTENDED view1 PREHOOK: type: DESCTABLE diff --git ql/src/test/results/clientpositive/authorization_8.q.out ql/src/test/results/clientpositive/authorization_8.q.out index b66fabc..4eef13b 100644 --- ql/src/test/results/clientpositive/authorization_8.q.out +++ ql/src/test/results/clientpositive/authorization_8.q.out @@ -9,8 +9,10 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@tbl_j5jbymsx8e PREHOOK: query: CREATE VIEW view_j5jbymsx8e_1 as SELECT * FROM tbl_j5jbymsx8e PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@tbl_j5jbymsx8e POSTHOOK: query: CREATE VIEW view_j5jbymsx8e_1 as SELECT * FROM tbl_j5jbymsx8e POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@tbl_j5jbymsx8e POSTHOOK: Output: default@view_j5jbymsx8e_1 PREHOOK: query: DESCRIBE view_j5jbymsx8e_1 PREHOOK: type: DESCTABLE diff --git ql/src/test/results/clientpositive/create_big_view.q.out ql/src/test/results/clientpositive/create_big_view.q.out index 20a4dc1..9efa517 100644 --- ql/src/test/results/clientpositive/create_big_view.q.out +++ ql/src/test/results/clientpositive/create_big_view.q.out @@ -242,6 +242,7 @@ CREATE VIEW big_view AS SELECT 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- Define a view with long SQL text to test metastore and other limits. CREATE VIEW big_view AS SELECT @@ -482,6 +483,7 @@ CREATE VIEW big_view AS SELECT 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@big_view PREHOOK: query: SELECT a FROM big_view LIMIT 1 diff --git ql/src/test/results/clientpositive/create_like_tbl_props.q.out ql/src/test/results/clientpositive/create_like_tbl_props.q.out index 039fbe3..318aea8 100644 --- ql/src/test/results/clientpositive/create_like_tbl_props.q.out +++ ql/src/test/results/clientpositive/create_like_tbl_props.q.out @@ -160,10 +160,12 @@ PREHOOK: query: --Test that CREATE TALBE LIKE on a view can take explicit table CREATE VIEW test_view (key, value) AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: --Test that CREATE TALBE LIKE on a view can take explicit table properties CREATE VIEW test_view (key, value) AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@test_view PREHOOK: query: CREATE TABLE test_table4 LIKE test_view TBLPROPERTIES('key'='value') PREHOOK: type: CREATETABLE diff --git ql/src/test/results/clientpositive/create_like_view.q.out ql/src/test/results/clientpositive/create_like_view.q.out index e0bacbc..48d4992 100644 --- ql/src/test/results/clientpositive/create_like_view.q.out +++ ql/src/test/results/clientpositive/create_like_view.q.out @@ -56,8 +56,10 @@ Storage Desc Params: serialization.format 1 PREHOOK: query: CREATE VIEW view1 AS SELECT * FROM table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@table1 POSTHOOK: query: CREATE VIEW view1 AS SELECT * FROM table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@table1 POSTHOOK: Output: default@view1 PREHOOK: query: CREATE TABLE table2 LIKE view1 PREHOOK: type: CREATETABLE @@ -236,9 +238,11 @@ POSTHOOK: Lineage: table2.b SIMPLE [(src)src.FieldSchema(name:value, type:string PREHOOK: query: -- check partitions create view view1 partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- check partitions create view view1 partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@view1 POSTHOOK: Lineage: table1.a SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: table1.b SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] diff --git ql/src/test/results/clientpositive/create_or_replace_view.q.out ql/src/test/results/clientpositive/create_or_replace_view.q.out index bb9b669..fe54ab5 100644 --- ql/src/test/results/clientpositive/create_or_replace_view.q.out +++ ql/src/test/results/clientpositive/create_or_replace_view.q.out @@ -4,8 +4,10 @@ POSTHOOK: query: drop view v POSTHOOK: type: DROPVIEW PREHOOK: query: create view v as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: create view v as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: describe formatted v PREHOOK: type: DESCTABLE @@ -42,9 +44,11 @@ View Expanded Text: select `srcpart`.`key`, `srcpart`.`value`, `srcpart`.`ds`, PREHOOK: query: -- modifying definition of unpartitioned view create or replace view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- modifying definition of unpartitioned view create or replace view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: alter view v add partition (ds='2008-04-08',hr='11') PREHOOK: type: ALTERTABLE_ADDPARTS @@ -128,9 +132,11 @@ ds=2008-04-08/hr=12 PREHOOK: query: -- altering partitioned view 1 create or replace view v partitioned on (ds, hr) as select value, ds, hr from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- altering partitioned view 1 create or replace view v partitioned on (ds, hr) as select value, ds, hr from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: select * from v where value='val_409' and ds='2008-04-08' and hr='11' PREHOOK: type: QUERY @@ -191,9 +197,11 @@ ds=2008-04-08/hr=12 PREHOOK: query: -- altering partitioned view 2 create or replace view v partitioned on (ds, hr) as select key, value, ds, hr from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- altering partitioned view 2 create or replace view v partitioned on (ds, hr) as select key, value, ds, hr from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: select * from v where value='val_409' and ds='2008-04-08' and hr='11' PREHOOK: type: QUERY @@ -269,8 +277,10 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@srcpart_temp PREHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart_temp PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart_temp POSTHOOK: query: create view v partitioned on (ds, hr) as select * from srcpart_temp POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart_temp POSTHOOK: Output: default@v PREHOOK: query: drop table srcpart_temp PREHOOK: type: DROPTABLE @@ -283,9 +293,11 @@ POSTHOOK: Output: default@srcpart_temp PREHOOK: query: -- v is now invalid create or replace view v partitioned on (ds, hr) as select * from srcpart PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- v is now invalid create or replace view v partitioned on (ds, hr) as select * from srcpart POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@v PREHOOK: query: describe formatted v PREHOOK: type: DESCTABLE diff --git ql/src/test/results/clientpositive/create_view.q.out ql/src/test/results/clientpositive/create_view.q.out index 0ef27da..f9cab4c 100644 --- ql/src/test/results/clientpositive/create_view.q.out +++ ql/src/test/results/clientpositive/create_view.q.out @@ -85,22 +85,28 @@ POSTHOOK: Input: default@src 86 val_86 PREHOOK: query: CREATE VIEW view1 AS SELECT value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW view1 AS SELECT value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@view1 PREHOOK: query: CREATE VIEW view2 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW view2 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src 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 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: default@view3 PREHOOK: query: SELECT * from view1 PREHOOK: type: QUERY @@ -443,8 +449,10 @@ POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:st 86 PREHOOK: query: CREATE VIEW view4 AS SELECT * FROM table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@table1 POSTHOOK: query: CREATE VIEW view4 AS SELECT * FROM table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@table1 POSTHOOK: Output: default@view4 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: SELECT * FROM view4 @@ -512,10 +520,12 @@ key int None 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 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: default@view5 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] @@ -545,11 +555,13 @@ PREHOOK: query: -- verify that column name and comment in DDL portion 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 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: default@view6 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE view6 @@ -565,6 +577,7 @@ WHERE key > 80 AND key < 100 ORDER BY key, value LIMIT 10 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- verify that ORDER BY and LIMIT are both supported in view def CREATE VIEW view7 AS SELECT * FROM src @@ -572,6 +585,7 @@ WHERE key > 80 AND key < 100 ORDER BY key, value LIMIT 10 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@view7 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: SELECT * FROM view7 @@ -676,10 +690,12 @@ PREHOOK: query: CREATE VIEW view8(c) AS SELECT test_translate('abc', 'a', 'b') FROM table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@table1 POSTHOOK: query: CREATE VIEW view8(c) AS SELECT test_translate('abc', 'a', 'b') FROM table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@table1 POSTHOOK: Output: default@view8 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view8 @@ -750,11 +766,13 @@ CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src 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: default@view9 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view9 @@ -825,11 +843,13 @@ CREATE VIEW view9(m) AS SELECT test_max(length(value)) FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src 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: default@view9 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view9 @@ -890,10 +910,12 @@ 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 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: default@view10 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view10 @@ -961,10 +983,12 @@ PREHOOK: query: CREATE VIEW view11 AS SELECT test_explode(array(1,2,3)) AS (boom) FROM table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@table1 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: default@view11 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view11 @@ -1027,10 +1051,12 @@ 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 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: default@view12 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view12 @@ -1110,11 +1136,13 @@ 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 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: default@view13 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view13 @@ -1197,6 +1225,7 @@ JOIN 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 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, @@ -1210,6 +1239,7 @@ JOIN 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: default@view14 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view14 @@ -1334,12 +1364,14 @@ SELECT key,COUNT(value) AS value_count FROM src GROUP BY key PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src 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: default@view15 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view15 @@ -1420,11 +1452,13 @@ CREATE VIEW view16 AS SELECT DISTINCT value FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src 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: default@view16 POSTHOOK: Lineage: table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: DESCRIBE EXTENDED view16 diff --git ql/src/test/results/clientpositive/create_view_partitioned.q.out ql/src/test/results/clientpositive/create_view_partitioned.q.out index e90ffc7..18a3ee2 100644 --- ql/src/test/results/clientpositive/create_view_partitioned.q.out +++ ql/src/test/results/clientpositive/create_view_partitioned.q.out @@ -19,6 +19,7 @@ SELECT key, value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- test partitioned view definition -- (underlying table is not actually partitioned) CREATE VIEW vp1 @@ -28,6 +29,7 @@ SELECT key, value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@vp1 PREHOOK: query: DESCRIBE EXTENDED vp1 PREHOOK: type: DESCTABLE @@ -228,12 +230,14 @@ CREATE VIEW vp2 PARTITIONED ON (hr) AS SELECT * FROM srcpart WHERE key < 10 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- test a partitioned view on top of an underlying partitioned table, -- but with only a suffix of the partitioning columns CREATE VIEW vp2 PARTITIONED ON (hr) AS SELECT * FROM srcpart WHERE key < 10 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@vp2 PREHOOK: query: DESCRIBE FORMATTED vp2 PREHOOK: type: DESCTABLE @@ -332,6 +336,7 @@ SELECT key, value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- test a partitioned view where the PARTITIONED ON clause references -- an imposed column name CREATE VIEW vp3(k,v) @@ -341,6 +346,7 @@ SELECT key, value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@vp3 PREHOOK: query: DESCRIBE FORMATTED vp3 PREHOOK: type: DESCTABLE diff --git ql/src/test/results/clientpositive/create_view_translate.q.out ql/src/test/results/clientpositive/create_view_translate.q.out index 3c98794..4218cd0 100644 --- ql/src/test/results/clientpositive/create_view_translate.q.out +++ ql/src/test/results/clientpositive/create_view_translate.q.out @@ -8,8 +8,10 @@ POSTHOOK: query: drop view if exists w POSTHOOK: type: DROPVIEW PREHOOK: query: create view v as select cast(key as string) from src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: create view v as select cast(key as string) from src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@v PREHOOK: query: describe formatted v PREHOOK: type: DESCTABLE @@ -44,10 +46,12 @@ PREHOOK: query: create view w as select key, value from ( select key, value from src ) a PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: create view w as select key, value from ( select key, value from src ) a POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@w PREHOOK: query: describe formatted w PREHOOK: type: DESCTABLE @@ -134,8 +138,10 @@ STAGE PLANS: PREHOOK: query: CREATE VIEW priceview AS SELECT items.id, items.info['price'] FROM items PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@items POSTHOOK: query: CREATE VIEW priceview AS SELECT items.id, items.info['price'] FROM items POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@items POSTHOOK: Output: default@priceview PREHOOK: query: select * from priceview PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/ctas_char.q.out ql/src/test/results/clientpositive/ctas_char.q.out index 3a172b8..433a7ed 100644 --- ql/src/test/results/clientpositive/ctas_char.q.out +++ ql/src/test/results/clientpositive/ctas_char.q.out @@ -41,9 +41,11 @@ POSTHOOK: Lineage: ctas_char_1.value SIMPLE [(src)src.FieldSchema(name:value, ty PREHOOK: query: -- view with char column create view ctas_char_3 as select key, value from ctas_char_2 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@ctas_char_2 POSTHOOK: query: -- view with char column create view ctas_char_3 as select key, value from ctas_char_2 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@ctas_char_2 POSTHOOK: Output: default@ctas_char_3 POSTHOOK: Lineage: ctas_char_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: ctas_char_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] diff --git ql/src/test/results/clientpositive/ctas_date.q.out ql/src/test/results/clientpositive/ctas_date.q.out index c3404fe..c7a26c9 100644 --- ql/src/test/results/clientpositive/ctas_date.q.out +++ ql/src/test/results/clientpositive/ctas_date.q.out @@ -47,17 +47,21 @@ POSTHOOK: Lineage: ctas_date_1.value SIMPLE [(src)src.FieldSchema(name:value, ty PREHOOK: query: -- view with date column create view ctas_date_3 as select * from ctas_date_2 where dd > date '2000-01-01' PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@ctas_date_2 POSTHOOK: query: -- view with date column create view ctas_date_3 as select * from ctas_date_2 where dd > date '2000-01-01' POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@ctas_date_2 POSTHOOK: Output: default@ctas_date_3 POSTHOOK: Lineage: ctas_date_1.dd SIMPLE [] POSTHOOK: Lineage: ctas_date_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: ctas_date_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: create view ctas_date_4 as select * from ctas_date_2 where dd < date '2000-01-01' PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@ctas_date_2 POSTHOOK: query: create view ctas_date_4 as select * from ctas_date_2 where dd < date '2000-01-01' POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@ctas_date_2 POSTHOOK: Output: default@ctas_date_4 POSTHOOK: Lineage: ctas_date_1.dd SIMPLE [] POSTHOOK: Lineage: ctas_date_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] diff --git ql/src/test/results/clientpositive/ctas_varchar.q.out ql/src/test/results/clientpositive/ctas_varchar.q.out index a4a9c66..a11131d 100644 --- ql/src/test/results/clientpositive/ctas_varchar.q.out +++ ql/src/test/results/clientpositive/ctas_varchar.q.out @@ -41,9 +41,11 @@ POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, PREHOOK: query: -- view with varchar column create view ctas_varchar_3 as select key, value from ctas_varchar_2 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@ctas_varchar_2 POSTHOOK: query: -- view with varchar column create view ctas_varchar_3 as select key, value from ctas_varchar_2 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@ctas_varchar_2 POSTHOOK: Output: default@ctas_varchar_3 POSTHOOK: Lineage: ctas_varchar_1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: ctas_varchar_1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] diff --git ql/src/test/results/clientpositive/database_drop.q.out ql/src/test/results/clientpositive/database_drop.q.out index 38279b8..86a21e4 100644 --- ql/src/test/results/clientpositive/database_drop.q.out +++ ql/src/test/results/clientpositive/database_drop.q.out @@ -40,8 +40,10 @@ POSTHOOK: type: LOAD POSTHOOK: Output: db5@temp_tbl PREHOOK: query: CREATE VIEW temp_tbl_view AS SELECT * FROM temp_tbl PREHOOK: type: CREATEVIEW +PREHOOK: Input: db5@temp_tbl POSTHOOK: query: CREATE VIEW temp_tbl_view AS SELECT * FROM temp_tbl POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db5@temp_tbl POSTHOOK: Output: db5@temp_tbl_view PREHOOK: query: CREATE INDEX idx1 ON TABLE temp_tbl(id) AS 'COMPACT' with DEFERRED REBUILD PREHOOK: type: CREATEINDEX @@ -80,8 +82,10 @@ POSTHOOK: Lineage: db5__temp_tbl_idx1__._offsets EXPRESSION [(temp_tbl)temp_tbl. POSTHOOK: Lineage: db5__temp_tbl_idx1__.id SIMPLE [(temp_tbl)temp_tbl.FieldSchema(name:id, type:int, comment:null), ] PREHOOK: query: CREATE VIEW temp_tbl2_view AS SELECT * FROM temp_tbl2 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db5@temp_tbl2 POSTHOOK: query: CREATE VIEW temp_tbl2_view AS SELECT * FROM temp_tbl2 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db5@temp_tbl2 POSTHOOK: Output: db5@temp_tbl2_view POSTHOOK: Lineage: db5__temp_tbl_idx1__._bucketname SIMPLE [(temp_tbl)temp_tbl.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: db5__temp_tbl_idx1__._offsets EXPRESSION [(temp_tbl)temp_tbl.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] diff --git ql/src/test/results/clientpositive/describe_formatted_view_partitioned.q.out ql/src/test/results/clientpositive/describe_formatted_view_partitioned.q.out index e384a4d..6327bbf 100644 --- ql/src/test/results/clientpositive/describe_formatted_view_partitioned.q.out +++ ql/src/test/results/clientpositive/describe_formatted_view_partitioned.q.out @@ -9,6 +9,7 @@ SELECT key, value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW view_partitioned PARTITIONED ON (value) AS @@ -16,6 +17,7 @@ SELECT key, value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@view_partitioned PREHOOK: query: ALTER VIEW view_partitioned ADD PARTITION (value='val_86') diff --git ql/src/test/results/clientpositive/describe_formatted_view_partitioned_json.q.out ql/src/test/results/clientpositive/describe_formatted_view_partitioned_json.q.out index ba56c0b..08075fe 100644 --- ql/src/test/results/clientpositive/describe_formatted_view_partitioned_json.q.out +++ ql/src/test/results/clientpositive/describe_formatted_view_partitioned_json.q.out @@ -9,6 +9,7 @@ SELECT key, value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: CREATE VIEW view_partitioned PARTITIONED ON (value) AS @@ -16,6 +17,7 @@ SELECT key, value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@view_partitioned PREHOOK: query: ALTER VIEW view_partitioned ADD PARTITION (value='val_86') diff --git ql/src/test/results/clientpositive/explain_dependency.q.out ql/src/test/results/clientpositive/explain_dependency.q.out index 2f272bb..8f2ab34 100644 --- ql/src/test/results/clientpositive/explain_dependency.q.out +++ ql/src/test/results/clientpositive/explain_dependency.q.out @@ -3,38 +3,50 @@ PREHOOK: query: -- This test is used for testing EXPLAIN DEPENDENCY command -- Create some views CREATE VIEW V1 AS SELECT key, value from src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- This test is used for testing EXPLAIN DEPENDENCY command -- Create some views CREATE VIEW V1 AS SELECT key, value from src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@V1 PREHOOK: query: CREATE VIEW V2 AS SELECT ds, key, value FROM srcpart WHERE ds IS NOT NULL PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: CREATE VIEW V2 AS SELECT ds, key, value FROM srcpart WHERE ds IS NOT NULL POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@V2 PREHOOK: query: CREATE VIEW V3 AS SELECT src1.key, src2.value FROM V2 src1 JOIN src src2 ON src1.key = src2.key WHERE src1.ds IS NOT NULL PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v2 POSTHOOK: query: CREATE VIEW V3 AS SELECT src1.key, src2.value FROM V2 src1 JOIN src src2 ON src1.key = src2.key WHERE src1.ds IS NOT NULL POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v2 POSTHOOK: Output: default@V3 PREHOOK: query: CREATE VIEW V4 AS SELECT src1.key, src2.value as value1, src3.value as value2 FROM V1 src1 JOIN V2 src2 on src1.key = src2.key JOIN src src3 ON src2.key = src3.key PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v1 PREHOOK: Input: default@v2 POSTHOOK: query: CREATE VIEW V4 AS SELECT src1.key, src2.value as value1, src3.value as value2 FROM V1 src1 JOIN V2 src2 on src1.key = src2.key JOIN src src3 ON src2.key = src3.key POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v1 POSTHOOK: Input: default@v2 POSTHOOK: Output: default@V4 @@ -98,10 +110,12 @@ PREHOOK: query: -- The table should show up in the explain dependency even if no -- of the partitions are selected. CREATE VIEW V5 as SELECT * FROM srcpart where ds = '10' PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- The table should show up in the explain dependency even if none -- of the partitions are selected. CREATE VIEW V5 as SELECT * FROM srcpart where ds = '10' POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@V5 PREHOOK: query: EXPLAIN DEPENDENCY SELECT * FROM V5 PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/explain_logical.q.out ql/src/test/results/clientpositive/explain_logical.q.out index 437844c..80f3209 100644 --- ql/src/test/results/clientpositive/explain_logical.q.out +++ ql/src/test/results/clientpositive/explain_logical.q.out @@ -3,38 +3,50 @@ PREHOOK: query: -- This test is used for testing EXPLAIN LOGICAL command -- Create some views CREATE VIEW V1 AS SELECT key, value from src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- This test is used for testing EXPLAIN LOGICAL command -- Create some views CREATE VIEW V1 AS SELECT key, value from src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@V1 PREHOOK: query: CREATE VIEW V2 AS SELECT ds, key, value FROM srcpart WHERE ds IS NOT NULL PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: CREATE VIEW V2 AS SELECT ds, key, value FROM srcpart WHERE ds IS NOT NULL POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@V2 PREHOOK: query: CREATE VIEW V3 AS SELECT src1.key, src2.value FROM V2 src1 JOIN src src2 ON src1.key = src2.key WHERE src1.ds IS NOT NULL PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v2 POSTHOOK: query: CREATE VIEW V3 AS SELECT src1.key, src2.value FROM V2 src1 JOIN src src2 ON src1.key = src2.key WHERE src1.ds IS NOT NULL POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v2 POSTHOOK: Output: default@V3 PREHOOK: query: CREATE VIEW V4 AS SELECT src1.key, src2.value as value1, src3.value as value2 FROM V1 src1 JOIN V2 src2 on src1.key = src2.key JOIN src src3 ON src2.key = src3.key PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src +PREHOOK: Input: default@srcpart PREHOOK: Input: default@v1 PREHOOK: Input: default@v2 POSTHOOK: query: CREATE VIEW V4 AS SELECT src1.key, src2.value as value1, src3.value as value2 FROM V1 src1 JOIN V2 src2 on src1.key = src2.key JOIN src src3 ON src2.key = src3.key POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src +POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@v1 POSTHOOK: Input: default@v2 POSTHOOK: Output: default@V4 @@ -510,10 +522,12 @@ PREHOOK: query: -- The table should show up in the explain logical even if none -- of the partitions are selected. CREATE VIEW V5 as SELECT * FROM srcpart where ds = '10' PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@srcpart POSTHOOK: query: -- The table should show up in the explain logical even if none -- of the partitions are selected. CREATE VIEW V5 as SELECT * FROM srcpart where ds = '10' POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@srcpart POSTHOOK: Output: default@V5 PREHOOK: query: EXPLAIN LOGICAL SELECT * FROM V5 PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/join_view.q.out ql/src/test/results/clientpositive/join_view.q.out index dac0b02..6c78e63 100644 --- ql/src/test/results/clientpositive/join_view.q.out +++ ql/src/test/results/clientpositive/join_view.q.out @@ -20,10 +20,14 @@ PREHOOK: query: -- test join views: see HIVE-1989 create view v as select invites.bar, invites2.foo, invites2.ds from invites join invites2 on invites.ds=invites2.ds PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@invites +PREHOOK: Input: default@invites2 POSTHOOK: query: -- test join views: see HIVE-1989 create view v as select invites.bar, invites2.foo, invites2.ds from invites join invites2 on invites.ds=invites2.ds POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@invites +POSTHOOK: Input: default@invites2 POSTHOOK: Output: default@v PREHOOK: query: explain select * from v where ds='2011-09-01' PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/lateral_view_noalias.q.out ql/src/test/results/clientpositive/lateral_view_noalias.q.out index 6e6e496..71a5111 100644 --- ql/src/test/results/clientpositive/lateral_view_noalias.q.out +++ ql/src/test/results/clientpositive/lateral_view_noalias.q.out @@ -127,9 +127,11 @@ key2 200 PREHOOK: query: -- view create view lv_noalias as SELECT myTab.* from src LATERAL VIEW explode(map('key1', 100, 'key2', 200)) myTab limit 2 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- view create view lv_noalias as SELECT myTab.* from src LATERAL VIEW explode(map('key1', 100, 'key2', 200)) myTab limit 2 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@lv_noalias PREHOOK: query: explain select * from lv_noalias a join lv_noalias b on a.key=b.key PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/ppd_union_view.q.out ql/src/test/results/clientpositive/ppd_union_view.q.out index 3c86758..d8190a4 100644 --- ql/src/test/results/clientpositive/ppd_union_view.q.out +++ ql/src/test/results/clientpositive/ppd_union_view.q.out @@ -145,6 +145,9 @@ on t1_old.keymap = t1_mapping.keymap and t1_old.ds = t1_mapping.ds ) subq PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@t1_mapping +PREHOOK: Input: default@t1_new +PREHOOK: Input: default@t1_old POSTHOOK: query: create view t1 partitioned on (ds) as select * from ( @@ -155,6 +158,9 @@ on t1_old.keymap = t1_mapping.keymap and t1_old.ds = t1_mapping.ds ) subq POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@t1_mapping +POSTHOOK: Input: default@t1_new +POSTHOOK: Input: default@t1_old POSTHOOK: Output: default@t1 POSTHOOK: Lineage: t1_mapping PARTITION(ds=2011-10-13).key SIMPLE [] POSTHOOK: Lineage: t1_mapping PARTITION(ds=2011-10-13).keymap SIMPLE [] diff --git ql/src/test/results/clientpositive/ptf.q.out ql/src/test/results/clientpositive/ptf.q.out index d86b705..1932b93 100644 --- ql/src/test/results/clientpositive/ptf.q.out +++ ql/src/test/results/clientpositive/ptf.q.out @@ -766,6 +766,7 @@ sum(p_retailprice) as s from part group by p_mfgr, p_brand PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@part POSTHOOK: query: -- 16. testViewAsTableInputToPTF create view IF NOT EXISTS mfgr_price_view as select p_mfgr, p_brand, @@ -773,6 +774,7 @@ sum(p_retailprice) as s from part group by p_mfgr, p_brand POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@part POSTHOOK: Output: default@mfgr_price_view PREHOOK: query: select p_mfgr, p_brand, s, sum(s) over w1 as s1 diff --git ql/src/test/results/clientpositive/show_create_table_view.q.out ql/src/test/results/clientpositive/show_create_table_view.q.out index 9f5309e..1ee4aa2 100644 --- ql/src/test/results/clientpositive/show_create_table_view.q.out +++ ql/src/test/results/clientpositive/show_create_table_view.q.out @@ -2,10 +2,12 @@ PREHOOK: query: -- Test SHOW CREATE TABLE on a view name. CREATE VIEW tmp_copy_src AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- Test SHOW CREATE TABLE on a view name. CREATE VIEW tmp_copy_src AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@tmp_copy_src PREHOOK: query: SHOW CREATE TABLE tmp_copy_src PREHOOK: type: SHOW_CREATETABLE diff --git ql/src/test/results/clientpositive/subquery_exists.q.out ql/src/test/results/clientpositive/subquery_exists.q.out index f55afd8..2d4e1a0 100644 --- ql/src/test/results/clientpositive/subquery_exists.q.out +++ ql/src/test/results/clientpositive/subquery_exists.q.out @@ -158,6 +158,7 @@ where exists from src a where b.value = a.value and a.key = b.key and a.value > 'val_9') PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- view test create view cv1 as select * @@ -167,6 +168,7 @@ where exists from src a where b.value = a.value and a.key = b.key and a.value > 'val_9') POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@cv1 PREHOOK: query: select * from cv1 PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/subquery_views.q.out ql/src/test/results/clientpositive/subquery_views.q.out index 37d29a7..f5bc3e7 100644 --- ql/src/test/results/clientpositive/subquery_views.q.out +++ ql/src/test/results/clientpositive/subquery_views.q.out @@ -7,6 +7,7 @@ where exists from src a where b.value = a.value and a.key = b.key and a.value > 'val_9') PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- exists test create view cv1 as select * @@ -16,6 +17,7 @@ where exists from src a where b.value = a.value and a.key = b.key and a.value > 'val_9') POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@cv1 PREHOOK: query: select * from cv1 where cv1.key in (select key from cv1 c where c.key > '95') @@ -44,6 +46,7 @@ where b.key not in where b.value = a.value and a.key = b.key and a.value > 'val_11' ) PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- not in test create view cv2 as select * @@ -54,6 +57,7 @@ where b.key not in where b.value = a.value and a.key = b.key and a.value > 'val_11' ) POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@cv2 PREHOOK: query: select * from cv2 where cv2.key in (select key from cv2 c where c.key < '11') @@ -86,6 +90,7 @@ where b.key in (select key from src where src.key > '8') group by key, value having count(*) in (select count(*) from src s1 where s1.key > '9' group by s1.key ) PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- in where + having create view cv3 as select key, value, count(*) @@ -94,6 +99,7 @@ where b.key in (select key from src where src.key > '8') group by key, value having count(*) in (select count(*) from src s1 where s1.key > '9' group by s1.key ) POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@cv3 PREHOOK: query: select * from cv3 PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/unset_table_view_property.q.out ql/src/test/results/clientpositive/unset_table_view_property.q.out index 2aa1dae..f9c0b39 100644 --- ql/src/test/results/clientpositive/unset_table_view_property.q.out +++ ql/src/test/results/clientpositive/unset_table_view_property.q.out @@ -193,9 +193,11 @@ rawDataSize -1 PREHOOK: query: -- UNSET VIEW PROPERTIES CREATE VIEW testView AS SELECT value FROM src WHERE key=86 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- UNSET VIEW PROPERTIES CREATE VIEW testView AS SELECT value FROM src WHERE key=86 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@testView PREHOOK: query: ALTER VIEW testView SET TBLPROPERTIES ('propA'='100', 'propB'='200') PREHOOK: type: ALTERVIEW_PROPERTIES diff --git ql/src/test/results/clientpositive/view.q.out ql/src/test/results/clientpositive/view.q.out index 288ae47..6f477cd 100644 --- ql/src/test/results/clientpositive/view.q.out +++ ql/src/test/results/clientpositive/view.q.out @@ -39,58 +39,78 @@ POSTHOOK: Output: db1@table2 PREHOOK: query: -- relative reference, no alias CREATE VIEW v1 AS SELECT * FROM table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- relative reference, no alias CREATE VIEW v1 AS SELECT * FROM table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v1 PREHOOK: query: -- relative reference, aliased CREATE VIEW v2 AS SELECT t1.* FROM table1 t1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- relative reference, aliased CREATE VIEW v2 AS SELECT t1.* FROM table1 t1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v2 PREHOOK: query: -- relative reference, multiple tables CREATE VIEW v3 AS SELECT t1.*, t2.key k FROM table1 t1 JOIN table2 t2 ON t1.key = t2.key PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 +PREHOOK: Input: db1@table2 POSTHOOK: query: -- relative reference, multiple tables CREATE VIEW v3 AS SELECT t1.*, t2.key k FROM table1 t1 JOIN table2 t2 ON t1.key = t2.key POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 +POSTHOOK: Input: db1@table2 POSTHOOK: Output: db1@v3 PREHOOK: query: -- absolute reference, no alias CREATE VIEW v4 AS SELECT * FROM db1.table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- absolute reference, no alias CREATE VIEW v4 AS SELECT * FROM db1.table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v4 PREHOOK: query: -- absolute reference, aliased CREATE VIEW v5 AS SELECT t1.* FROM db1.table1 t1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- absolute reference, aliased CREATE VIEW v5 AS SELECT t1.* FROM db1.table1 t1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v5 PREHOOK: query: -- absolute reference, multiple tables CREATE VIEW v6 AS SELECT t1.*, t2.key k FROM db1.table1 t1 JOIN db1.table2 t2 ON t1.key = t2.key PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 +PREHOOK: Input: db1@table2 POSTHOOK: query: -- absolute reference, multiple tables CREATE VIEW v6 AS SELECT t1.*, t2.key k FROM db1.table1 t1 JOIN db1.table2 t2 ON t1.key = t2.key POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 +POSTHOOK: Input: db1@table2 POSTHOOK: Output: db1@v6 PREHOOK: query: -- relative reference, explicit column CREATE VIEW v7 AS SELECT key from table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- relative reference, explicit column CREATE VIEW v7 AS SELECT key from table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v7 PREHOOK: query: -- absolute reference, explicit column CREATE VIEW v8 AS SELECT key from db1.table1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: db1@table1 POSTHOOK: query: -- absolute reference, explicit column CREATE VIEW v8 AS SELECT key from db1.table1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: db1@table1 POSTHOOK: Output: db1@v8 PREHOOK: query: CREATE DATABASE db2 PREHOOK: type: CREATEDATABASE diff --git ql/src/test/results/clientpositive/view_cast.q.out ql/src/test/results/clientpositive/view_cast.q.out index ed1e410..f9788ce 100644 --- ql/src/test/results/clientpositive/view_cast.q.out +++ ql/src/test/results/clientpositive/view_cast.q.out @@ -43,8 +43,10 @@ POSTHOOK: query: DROP VIEW IF EXISTS aa_view_tw POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW aa_view_tw AS SELECT ks_uid, sr_id, act, at_ks_uid, at_sr_uid, from_unixtime(CAST(CAST( tstamp as BIGINT)/1000 AS BIGINT),'yyyyMMdd') AS act_date, from_unixtime(CAST(CAST( original_tstamp AS BIGINT)/1000 AS BIGINT),'yyyyMMdd') AS content_creation_date FROM atab WHERE dt='20130312' AND nt='tw' AND ks_uid != at_ks_uid PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@atab POSTHOOK: query: CREATE VIEW aa_view_tw AS SELECT ks_uid, sr_id, act, at_ks_uid, at_sr_uid, from_unixtime(CAST(CAST( tstamp as BIGINT)/1000 AS BIGINT),'yyyyMMdd') AS act_date, from_unixtime(CAST(CAST( original_tstamp AS BIGINT)/1000 AS BIGINT),'yyyyMMdd') AS content_creation_date FROM atab WHERE dt='20130312' AND nt='tw' AND ks_uid != at_ks_uid POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@atab POSTHOOK: Output: default@aa_view_tw PREHOOK: query: DROP VIEW IF EXISTS joined_aa_view_tw PREHOOK: type: DROPVIEW @@ -53,9 +55,13 @@ POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW joined_aa_view_tw AS SELECT aa.ks_uid, aa.sr_id, aa.act, at_sr_uid, aa.act_date, aa.at_ks_uid, aa.content_creation_date, coalesce( other.ksc, 10.0) AS at_ksc, coalesce( self.ksc , 10.0 ) AS self_ksc FROM aa_view_tw aa LEFT OUTER JOIN ( SELECT ks_uid, csc AS ksc FROM mstab WHERE dt='20130311' ) self ON ( CAST(aa.ks_uid AS BIGINT) = CAST(self.ks_uid AS BIGINT) ) LEFT OUTER JOIN ( SELECT ks_uid, csc AS ksc FROM mstab WHERE dt='20130311' ) other ON ( CAST(aa.at_ks_uid AS BIGINT) = CAST(other.ks_uid AS BIGINT) ) PREHOOK: type: CREATEVIEW PREHOOK: Input: default@aa_view_tw +PREHOOK: Input: default@atab +PREHOOK: Input: default@mstab POSTHOOK: query: CREATE VIEW joined_aa_view_tw AS SELECT aa.ks_uid, aa.sr_id, aa.act, at_sr_uid, aa.act_date, aa.at_ks_uid, aa.content_creation_date, coalesce( other.ksc, 10.0) AS at_ksc, coalesce( self.ksc , 10.0 ) AS self_ksc FROM aa_view_tw aa LEFT OUTER JOIN ( SELECT ks_uid, csc AS ksc FROM mstab WHERE dt='20130311' ) self ON ( CAST(aa.ks_uid AS BIGINT) = CAST(self.ks_uid AS BIGINT) ) LEFT OUTER JOIN ( SELECT ks_uid, csc AS ksc FROM mstab WHERE dt='20130311' ) other ON ( CAST(aa.at_ks_uid AS BIGINT) = CAST(other.ks_uid AS BIGINT) ) POSTHOOK: type: CREATEVIEW POSTHOOK: Input: default@aa_view_tw +POSTHOOK: Input: default@atab +POSTHOOK: Input: default@mstab POSTHOOK: Output: default@joined_aa_view_tw PREHOOK: query: SELECT * FROM joined_aa_view_tw PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/view_inputs.q.out ql/src/test/results/clientpositive/view_inputs.q.out index 5ea7589..0df9a4c 100644 --- ql/src/test/results/clientpositive/view_inputs.q.out +++ ql/src/test/results/clientpositive/view_inputs.q.out @@ -2,16 +2,20 @@ PREHOOK: query: -- Tests that selecting from a view and another view that select CREATE VIEW test_view1 AS SELECT * FROM src PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src POSTHOOK: query: -- Tests that selecting from a view and another view that selects from that same view CREATE VIEW test_view1 AS SELECT * FROM src POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Output: default@test_view1 PREHOOK: query: CREATE VIEW test_view2 AS SELECT * FROM test_view1 PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@src PREHOOK: Input: default@test_view1 POSTHOOK: query: CREATE VIEW test_view2 AS SELECT * FROM test_view1 POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@src POSTHOOK: Input: default@test_view1 POSTHOOK: Output: default@test_view2 PREHOOK: query: SELECT COUNT(*) FROM test_view1 a JOIN test_view2 b ON a.key = b.key diff --git ql/src/test/results/clientpositive/windowing.q.out ql/src/test/results/clientpositive/windowing.q.out index bbd169f..9934a72 100644 --- ql/src/test/results/clientpositive/windowing.q.out +++ ql/src/test/results/clientpositive/windowing.q.out @@ -1018,6 +1018,7 @@ round(sum(p_retailprice),2) as s from part group by p_mfgr, p_brand PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@part POSTHOOK: query: -- 22. testViewAsTableInputWithWindowing create view IF NOT EXISTS mfgr_price_view as select p_mfgr, p_brand, @@ -1025,6 +1026,7 @@ round(sum(p_retailprice),2) as s from part group by p_mfgr, p_brand POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@part POSTHOOK: Output: default@mfgr_price_view PREHOOK: query: select * from ( @@ -1105,6 +1107,7 @@ sum(p_retailprice) over w1 as s from part window w1 as (distribute by p_mfgr sort by p_name rows between 2 preceding and current row) PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@part POSTHOOK: query: -- 23. testCreateViewWithWindowingQuery create view IF NOT EXISTS mfgr_brand_price_view as select p_mfgr, p_brand, @@ -1112,6 +1115,7 @@ sum(p_retailprice) over w1 as s from part window w1 as (distribute by p_mfgr sort by p_name rows between 2 preceding and current row) POSTHOOK: type: CREATEVIEW +POSTHOOK: Input: default@part POSTHOOK: Output: default@mfgr_brand_price_view PREHOOK: query: select * from mfgr_brand_price_view PREHOOK: type: QUERY