diff --git a/pom.xml b/pom.xml index f84f3e9ce290..f2cb761d04c9 100644 --- a/pom.xml +++ b/pom.xml @@ -174,6 +174,7 @@ 2.4.0 2.6.0 3.0.0 + 2.2.4 diff --git a/ql/pom.xml b/ql/pom.xml index b86b85d1a7e9..6026c4988f08 100644 --- a/ql/pom.xml +++ b/ql/pom.xml @@ -287,6 +287,11 @@ JavaEWAH ${javaewah.version} + + com.google.code.gson + gson + ${gson.version} + org.iq80.snappy snappy diff --git a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java index 669e6be8b9b3..e04165b0c801 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java @@ -446,7 +446,7 @@ public int compile(String command, boolean resetTaskIds) { String operationName = ctx.getExplain() ? HiveOperation.EXPLAIN.getOperationName() : SessionState.get().getCommandType(); plan = new QueryPlan(queryStr, sem, perfLogger.getStartTime(PerfLogger.DRIVER_RUN), queryId, - operationName); + operationName, getSchema(sem, conf)); conf.setVar(HiveConf.ConfVars.HIVEQUERYSTRING, queryStr); diff --git a/ql/src/java/org/apache/hadoop/hive/ql/QueryPlan.java b/ql/src/java/org/apache/hadoop/hive/ql/QueryPlan.java index a0d61f54d0ee..29a39395db7b 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/QueryPlan.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/QueryPlan.java @@ -37,6 +37,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.hive.metastore.api.Schema; import org.apache.hadoop.hive.ql.exec.ConditionalTask; import org.apache.hadoop.hive.ql.exec.ExplainTask; import org.apache.hadoop.hive.ql.exec.FetchTask; @@ -89,6 +90,7 @@ public class QueryPlan implements Serializable { protected LineageInfo linfo; private TableAccessInfo tableAccessInfo; private ColumnAccessInfo columnAccessInfo; + private Schema resultSchema; private HashMap idToTableNameMap; @@ -111,7 +113,7 @@ public QueryPlan() { } public QueryPlan(String queryString, BaseSemanticAnalyzer sem, Long startTime, String queryId, - String operationName) { + String operationName, Schema resultSchema) { this.queryString = queryString; rootTasks = new ArrayList>(); @@ -133,6 +135,7 @@ public QueryPlan(String queryString, BaseSemanticAnalyzer sem, Long startTime, S queryProperties = sem.getQueryProperties(); queryStartTime = startTime; this.operationName = operationName; + this.resultSchema = resultSchema; } public String getQueryStr() { @@ -683,6 +686,10 @@ public void setOutputs(HashSet outputs) { this.outputs = outputs; } + public Schema getResultSchema() { + return resultSchema; + } + public HashMap getIdToTableNameMap() { return idToTableNameMap; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/hooks/HookContext.java b/ql/src/java/org/apache/hadoop/hive/ql/hooks/HookContext.java index 0c6a9380e7c1..bed17e9212e0 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/hooks/HookContext.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/hooks/HookContext.java @@ -28,6 +28,7 @@ import org.apache.hadoop.hive.conf.HiveConf; import org.apache.hadoop.hive.ql.QueryPlan; import org.apache.hadoop.hive.ql.exec.TaskRunner; +import org.apache.hadoop.hive.ql.optimizer.lineage.LineageCtx.Index; import org.apache.hadoop.hive.ql.session.SessionState; import org.apache.hadoop.hive.shims.Utils; import org.apache.hadoop.security.UserGroupInformation; @@ -47,6 +48,7 @@ static public enum HookType { private Set inputs; private Set outputs; private LineageInfo linfo; + private Index depMap; private UserGroupInformation ugi; private HookType hookType; final private Map inputPathToContentSummary; @@ -67,8 +69,10 @@ public HookContext(QueryPlan queryPlan, HiveConf conf, outputs = queryPlan.getOutputs(); ugi = Utils.getUGI(); linfo= null; + depMap = null; if(SessionState.get() != null){ linfo = SessionState.get().getLineageState().getLineageInfo(); + depMap = SessionState.get().getLineageState().getIndex(); } this.userName = userName; this.ipAddress = ipAddress; @@ -127,6 +131,14 @@ public void setLinfo(LineageInfo linfo) { this.linfo = linfo; } + public Index getIndex() { + return depMap; + } + + public void setIndex(Index depMap) { + this.depMap = depMap; + } + public UserGroupInformation getUgi() { return ugi; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageInfo.java b/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageInfo.java index f98b38b293c2..fe0841e58bf4 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageInfo.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageInfo.java @@ -21,10 +21,13 @@ import java.io.Serializable; import java.util.Collections; import java.util.LinkedHashMap; +import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Set; +import org.apache.commons.collections.SetUtils; +import org.apache.commons.lang.StringUtils; import org.apache.hadoop.hive.metastore.api.FieldSchema; import org.apache.hadoop.hive.metastore.api.Partition; import org.apache.hadoop.hive.metastore.api.Table; @@ -260,6 +263,25 @@ public void setColumn(FieldSchema column) { public String toString() { return tabAlias + ":" + column; } + + @Override + public int hashCode() { + return (column != null ? column.hashCode() : 7) + + (tabAlias != null ? tabAlias.hashCode() : 11); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!(obj instanceof BaseColumnInfo)) { + return false; + } + BaseColumnInfo ci = (BaseColumnInfo) obj; + return (column == null ? ci.column == null : column.equals(ci.column)) + && (tabAlias == null ? ci.tabAlias == null : tabAlias.equals(ci.tabAlias)); + } } public static class TableAliasInfo implements Serializable { @@ -311,6 +333,25 @@ public void setTable(Table table) { public String toString() { return table.getDbName() + "." + table.getTableName() + "(" + alias + ")"; } + + @Override + public int hashCode() { + return (alias != null ? alias.hashCode() : 7) + + (table != null ? table.hashCode() : 11); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!(obj instanceof TableAliasInfo)) { + return false; + } + TableAliasInfo tabAlias = (TableAliasInfo) obj; + return StringUtils.equals(alias, tabAlias.alias) + && (table == null ? tabAlias.table == null : table.equals(tabAlias.table)); + } } /** @@ -386,6 +427,61 @@ public String toString() { } } + /** + * This class tracks the predicate information for an operator. + */ + public static class Predicate { + + /** + * Expression string for the predicate. + */ + private String expr; + + /** + * The set of base columns that the predicate depends on. + */ + private Set baseCols = new LinkedHashSet(); + + /** + * @return the expr + */ + public String getExpr() { + return expr; + } + + /** + * @param expr the expr to set + */ + public void setExpr(String expr) { + this.expr = expr; + } + + /** + * @return the baseCols + */ + public Set getBaseCols() { + return baseCols; + } + + @Override + public int hashCode() { + return baseCols.hashCode() + (expr != null ? expr.hashCode() : 11); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!(obj instanceof Predicate)) { + return false; + } + Predicate cond = (Predicate) obj; + return StringUtils.equals(cond.expr, expr) + && SetUtils.isEqualSet(cond.baseCols, baseCols); + } + } + /** * The map contains an index from the (datacontainer, columnname) to the * dependency vector for that tuple. This is used to generate the diff --git a/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageLogger.java b/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageLogger.java new file mode 100644 index 000000000000..fc32af7d7b70 --- /dev/null +++ b/ql/src/java/org/apache/hadoop/hive/ql/hooks/LineageLogger.java @@ -0,0 +1,441 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.hadoop.hive.ql.hooks; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.apache.commons.collections.SetUtils; +import org.apache.commons.io.output.StringBuilderWriter; +import org.apache.commons.lang.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.hive.conf.HiveConf; +import org.apache.hadoop.hive.metastore.api.FieldSchema; +import org.apache.hadoop.hive.metastore.api.Table; +import org.apache.hadoop.hive.ql.QueryPlan; +import org.apache.hadoop.hive.ql.exec.ColumnInfo; +import org.apache.hadoop.hive.ql.exec.SelectOperator; +import org.apache.hadoop.hive.ql.exec.TaskRunner; +import org.apache.hadoop.hive.ql.exec.Utilities; +import org.apache.hadoop.hive.ql.hooks.HookContext.HookType; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.BaseColumnInfo; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.Dependency; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.Predicate; +import org.apache.hadoop.hive.ql.optimizer.lineage.LineageCtx.Index; +import org.apache.hadoop.hive.ql.plan.HiveOperation; +import org.apache.hadoop.hive.ql.session.SessionState; +import org.apache.hadoop.hive.ql.session.SessionState.LogHelper; + +import com.google.common.collect.Lists; +import com.google.common.hash.Hasher; +import com.google.common.hash.Hashing; +import com.google.gson.stream.JsonWriter; + +/** + * Implementation of a post execute hook that logs lineage info to a log file. + */ +public class LineageLogger implements ExecuteWithHookContext { + + private static final Log LOG = LogFactory.getLog(LineageLogger.class); + + private static final HashSet OPERATION_NAMES = new HashSet(); + + static { + OPERATION_NAMES.add(HiveOperation.QUERY.getOperationName()); + OPERATION_NAMES.add(HiveOperation.CREATETABLE_AS_SELECT.getOperationName()); + OPERATION_NAMES.add(HiveOperation.ALTERVIEW_AS.getOperationName()); + OPERATION_NAMES.add(HiveOperation.CREATEVIEW.getOperationName()); + } + + private static final String FORMAT_VERSION = "1.0"; + + final static class Edge { + public static enum Type { + PROJECTION, PREDICATE + } + + private Set sources; + private Set targets; + private String expr; + private Type type; + + Edge(Set sources, Set targets, String expr, Type type) { + this.sources = sources; + this.targets = targets; + this.expr = expr; + this.type = type; + } + } + + final static class Vertex { + public static enum Type { + COLUMN, TABLE + } + private Type type; + private String label; + private int id; + + Vertex(String label) { + this(label, Type.COLUMN); + } + + Vertex(String label, Type type) { + this.label = label; + this.type = type; + } + + @Override + public int hashCode() { + return label.hashCode() + type.hashCode() * 3; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!(obj instanceof Vertex)) { + return false; + } + Vertex vertex = (Vertex) obj; + return label.equals(vertex.label) && type == vertex.type; + } + } + + @Override + public void run(HookContext hookContext) { + assert(hookContext.getHookType() == HookType.POST_EXEC_HOOK); + QueryPlan plan = hookContext.getQueryPlan(); + Index index = hookContext.getIndex(); + SessionState ss = SessionState.get(); + if (ss != null && index != null + && OPERATION_NAMES.contains(plan.getOperationName())) { + try { + StringBuilderWriter out = new StringBuilderWriter(1024); + JsonWriter writer = new JsonWriter(out); + writer.setIndent(" "); + + out.append("POSTHOOK: LINEAGE: "); + String queryStr = plan.getQueryStr().trim(); + writer.beginObject(); + writer.name("version").value(FORMAT_VERSION); + HiveConf conf = ss.getConf(); + boolean testMode = conf.getBoolVar(HiveConf.ConfVars.HIVE_IN_TEST); + if (!testMode) { + // Don't emit user/timestamp info in test mode, + // so that the test golden output file is fixed. + long queryTime = plan.getQueryStartTime().longValue(); + writer.name("user").value(hookContext.getUgi().getUserName()); + writer.name("timestamp").value(queryTime/1000); + writer.name("jobIds"); + writer.beginArray(); + List tasks = hookContext.getCompleteTaskList(); + if (tasks != null && !tasks.isEmpty()) { + for (TaskRunner task: tasks) { + String jobId = task.getTask().getJobID(); + if (jobId != null) { + writer.value(jobId); + } + } + } + writer.endArray(); + } + writer.name("engine").value( + HiveConf.getVar(conf, HiveConf.ConfVars.HIVE_EXECUTION_ENGINE)); + writer.name("hash").value(getQueryHash(queryStr)); + writer.name("queryText").value(queryStr); + + List edges = getEdges(plan, index); + Set vertices = getVertices(edges); + writeEdges(writer, edges); + writeVertices(writer, vertices); + writer.endObject(); + writer.close(); + + // Log the lineage info + String lineage = out.toString(); + if (testMode) { + // Log to console + log(lineage); + } else { + // In none test mode, emit to a log file, + // which can be different from the normal hive.log. + // For example, using NoDeleteRollingFileAppender to + // log to some file with different rolling policy. + LOG.info(lineage); + } + } catch (Throwable t) { + // Don't fail the query just because of any lineage issue. + log("Failed to log lineage graph, query is not affected\n" + + org.apache.hadoop.util.StringUtils.stringifyException(t)); + } + } + } + + /** + * Log an error to console if available. + */ + private void log(String error) { + LogHelper console = SessionState.getConsole(); + if (console != null) { + console.printError(error); + } + } + + /** + * Based on the final select operator, find out all the target columns. + * For each target column, find out its sources based on the dependency index. + */ + private List getEdges(QueryPlan plan, Index index) { + List fieldSchemas = plan.getResultSchema().getFieldSchemas(); + int fields = fieldSchemas == null ? 0 : fieldSchemas.size(); + SelectOperator finalSelOp = index.getFinalSelectOp(); + List edges = new ArrayList(); + if (finalSelOp != null && fields > 0) { + Map colMap = index.getDependencies(finalSelOp); + List dependencies = colMap != null ? Lists.newArrayList(colMap.values()) : null; + if (dependencies == null || dependencies.size() != fields) { + log("Result schema has " + fields + + " fields, but we don't get as many dependencies"); + } else { + String destTableName = null; + List colNames = null; + // Based on the plan outputs, find out the target table name and column names. + for (WriteEntity output : plan.getOutputs()) { + if (output.getType() == Entity.Type.TABLE) { + org.apache.hadoop.hive.ql.metadata.Table t = output.getTable(); + destTableName = t.getDbName() + "." + t.getTableName(); + List cols = t.getCols(); + if (cols != null && !cols.isEmpty()) { + colNames = Utilities.getColumnNamesFromFieldSchema(cols); + } + break; + } + } + + // Go through each target column, generate the lineage edges. + Set allTargets = new LinkedHashSet(); + Map allSources = new LinkedHashMap(); + for (int i = 0; i < fields; i++) { + Vertex target = new Vertex( + getTargetFieldName(i, destTableName, colNames, fieldSchemas)); + allTargets.add(target); + Dependency dep = dependencies.get(i); + String expr = dep.getExpr(); + Set sources = createSourceVertices(allSources, dep.getBaseCols()); + Edge edge = findSimilarEdgeBySources(edges, sources, expr, Edge.Type.PROJECTION); + if (edge == null) { + Set targets = new LinkedHashSet(); + targets.add(target); + edges.add(new Edge(sources, targets, expr, Edge.Type.PROJECTION)); + } else { + edge.targets.add(target); + } + } + Set conds = index.getPredicates(finalSelOp); + if (conds != null && !conds.isEmpty()) { + for (Predicate cond: conds) { + String expr = cond.getExpr(); + Set sources = createSourceVertices(allSources, cond.getBaseCols()); + Edge edge = findSimilarEdgeByTargets(edges, allTargets, expr, Edge.Type.PREDICATE); + if (edge == null) { + edges.add(new Edge(sources, allTargets, expr, Edge.Type.PREDICATE)); + } else { + edge.sources.addAll(sources); + } + } + } + } + } + return edges; + } + + /** + * Convert a list of columns to a set of vertices. + * Use cached vertices if possible. + */ + private Set createSourceVertices( + Map srcVertexCache, Collection baseCols) { + Set sources = new LinkedHashSet(); + if (baseCols != null && !baseCols.isEmpty()) { + for(BaseColumnInfo col: baseCols) { + Table table = col.getTabAlias().getTable(); + if (table.isTemporary()) { + // Ignore temporary tables + continue; + } + Vertex.Type type = Vertex.Type.TABLE; + String tableName = table.getDbName() + "." + table.getTableName(); + FieldSchema fieldSchema = col.getColumn(); + String label = tableName; + if (fieldSchema != null) { + type = Vertex.Type.COLUMN; + label = tableName + "." + fieldSchema.getName(); + } + sources.add(getOrCreateVertex(srcVertexCache, label, type)); + } + } + return sources; + } + + /** + * Find a vertex from a cache, or create one if not. + */ + private Vertex getOrCreateVertex( + Map vertices, String label, Vertex.Type type) { + Vertex vertex = vertices.get(label); + if (vertex == null) { + vertex = new Vertex(label, type); + vertices.put(label, vertex); + } + return vertex; + } + + /** + * Find an edge that has the same type, expression, and sources. + */ + private Edge findSimilarEdgeBySources( + List edges, Set sources, String expr, Edge.Type type) { + for (Edge edge: edges) { + if (edge.type == type && StringUtils.equals(edge.expr, expr) + && SetUtils.isEqualSet(edge.sources, sources)) { + return edge; + } + } + return null; + } + + /** + * Find an edge that has the same type, expression, and targets. + */ + private Edge findSimilarEdgeByTargets( + List edges, Set targets, String expr, Edge.Type type) { + for (Edge edge: edges) { + if (edge.type == type && StringUtils.equals(edge.expr, expr) + && SetUtils.isEqualSet(edge.targets, targets)) { + return edge; + } + } + return null; + } + + /** + * Generate normalized name for a given target column. + */ + private String getTargetFieldName(int fieldIndex, + String destTableName, List colNames, List fieldSchemas) { + String fieldName = fieldSchemas.get(fieldIndex).getName(); + String[] parts = fieldName.split("\\."); + if (destTableName != null) { + String colName = parts[parts.length - 1]; + if (colNames != null && !colNames.contains(colName)) { + colName = colNames.get(fieldIndex); + } + return destTableName + "." + colName; + } + if (parts.length == 2 && parts[0].startsWith("_u")) { + return parts[1]; + } + return fieldName; + } + + /** + * Get all the vertices of all edges. Targets at first, + * then sources. Assign id to each vertex. + */ + private Set getVertices(List edges) { + Set vertices = new LinkedHashSet(); + for (Edge edge: edges) { + vertices.addAll(edge.targets); + } + for (Edge edge: edges) { + vertices.addAll(edge.sources); + } + + // Assign ids to all vertices, + // targets at first, then sources. + int id = 0; + for (Vertex vertex: vertices) { + vertex.id = id++; + } + return vertices; + } + + /** + * Write out an JSON array of edges. + */ + private void writeEdges(JsonWriter writer, List edges) throws IOException { + writer.name("edges"); + writer.beginArray(); + for (Edge edge: edges) { + writer.beginObject(); + writer.name("sources"); + writer.beginArray(); + for (Vertex vertex: edge.sources) { + writer.value(vertex.id); + } + writer.endArray(); + writer.name("targets"); + writer.beginArray(); + for (Vertex vertex: edge.targets) { + writer.value(vertex.id); + } + writer.endArray(); + if (edge.expr != null) { + writer.name("expression").value(edge.expr); + } + writer.name("edgeType").value(edge.type.name()); + writer.endObject(); + } + writer.endArray(); + } + + /** + * Write out an JSON array of vertices. + */ + private void writeVertices(JsonWriter writer, Set vertices) throws IOException { + writer.name("vertices"); + writer.beginArray(); + for (Vertex vertex: vertices) { + writer.beginObject(); + writer.name("id").value(vertex.id); + writer.name("vertexType").value(vertex.type.name()); + writer.name("vertexId").value(vertex.label); + writer.endObject(); + } + writer.endArray(); + } + + /** + * Generate query string md5 hash. + */ + private String getQueryHash(String queryStr) { + Hasher hasher = Hashing.md5().newHasher(); + hasher.putString(queryStr); + return hasher.hash().toString(); + } +} diff --git a/ql/src/java/org/apache/hadoop/hive/ql/log/NoDeleteRollingFileAppender.java b/ql/src/java/org/apache/hadoop/hive/ql/log/NoDeleteRollingFileAppender.java new file mode 100644 index 000000000000..be32f06e43a8 --- /dev/null +++ b/ql/src/java/org/apache/hadoop/hive/ql/log/NoDeleteRollingFileAppender.java @@ -0,0 +1,176 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.hadoop.hive.ql.log; + +import java.io.File; +import java.io.IOException; +import java.io.InterruptedIOException; +import java.io.Writer; + +import org.apache.log4j.FileAppender; +import org.apache.log4j.Layout; +import org.apache.log4j.helpers.CountingQuietWriter; +import org.apache.log4j.helpers.LogLog; +import org.apache.log4j.helpers.OptionConverter; +import org.apache.log4j.spi.LoggingEvent; + +public class NoDeleteRollingFileAppender extends FileAppender { + /** + * The default maximum file size is 10MB. + */ + protected long maxFileSize = 10 * 1024 * 1024; + + private long nextRollover = 0; + + /** + * The default constructor simply calls its {@link FileAppender#FileAppender + * parents constructor}. + */ + public NoDeleteRollingFileAppender() { + } + + /** + * Instantiate a RollingFileAppender and open the file designated by + * filename. The opened filename will become the output + * destination for this appender. + *

+ * If the append parameter is true, the file will be appended to. + * Otherwise, the file designated by filename will be truncated + * before being opened. + */ + public NoDeleteRollingFileAppender(Layout layout, String filename, + boolean append) throws IOException { + super(layout, filename, append); + } + + /** + * Instantiate a FileAppender and open the file designated by + * filename. The opened filename will become the output + * destination for this appender. + *

+ * The file will be appended to. + */ + public NoDeleteRollingFileAppender(Layout layout, String filename) + throws IOException { + super(layout, filename); + } + + /** + * Get the maximum size that the output file is allowed to reach before being + * rolled over to backup files. + */ + public long getMaximumFileSize() { + return maxFileSize; + } + + /** + * Implements the usual roll over behavior. + *

+ * File is renamed File.yyyyMMddHHmmss and closed. A + * new File is created to receive further log output. + */ + // synchronization not necessary since doAppend is already synced + public void rollOver() { + if (qw != null) { + long size = ((CountingQuietWriter) qw).getCount(); + LogLog.debug("rolling over count=" + size); + // if operation fails, do not roll again until + // maxFileSize more bytes are written + nextRollover = size + maxFileSize; + } + + this.closeFile(); // keep windows happy. + + int p = fileName.lastIndexOf("."); + String file = p > 0 ? fileName.substring(0, p) : fileName; + try { + // This will also close the file. This is OK since multiple + // close operations are safe. + this.setFile(file, false, bufferedIO, bufferSize); + nextRollover = 0; + } catch (IOException e) { + if (e instanceof InterruptedIOException) { + Thread.currentThread().interrupt(); + } + LogLog.error("setFile(" + file + ", false) call failed.", e); + } + } + + public synchronized void setFile(String fileName, boolean append, + boolean bufferedIO, int bufferSize) throws IOException { + String newFileName = getLogFileName(fileName); + super.setFile(newFileName, append, this.bufferedIO, this.bufferSize); + if (append) { + File f = new File(newFileName); + ((CountingQuietWriter) qw).setCount(f.length()); + } + } + + /** + * Set the maximum size that the output file is allowed to reach before being + * rolled over to backup files. + *

+ * This method is equivalent to {@link #setMaxFileSize} except that it is + * required for differentiating the setter taking a long argument + * from the setter taking a String argument by the JavaBeans + * {@link java.beans.Introspector Introspector}. + * + * @see #setMaxFileSize(String) + */ + public void setMaximumFileSize(long maxFileSize) { + this.maxFileSize = maxFileSize; + } + + /** + * Set the maximum size that the output file is allowed to reach before being + * rolled over to backup files. + *

+ * In configuration files, the MaxFileSize option takes an long integer + * in the range 0 - 2^63. You can specify the value with the suffixes "KB", + * "MB" or "GB" so that the integer is interpreted being expressed + * respectively in kilobytes, megabytes or gigabytes. For example, the value + * "10KB" will be interpreted as 10240. + */ + public void setMaxFileSize(String value) { + maxFileSize = OptionConverter.toFileSize(value, maxFileSize + 1); + } + + protected void setQWForFiles(Writer writer) { + this.qw = new CountingQuietWriter(writer, errorHandler); + } + + /** + * This method differentiates RollingFileAppender from its super class. + */ + protected void subAppend(LoggingEvent event) { + super.subAppend(event); + + if (fileName != null && qw != null) { + long size = ((CountingQuietWriter) qw).getCount(); + if (size >= maxFileSize && size >= nextRollover) { + rollOver(); + } + } + } + + // Mangled file name. Append the current timestamp + private static String getLogFileName(String oldFileName) { + return oldFileName + "." + Long.toString(System.currentTimeMillis()); + } +} diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcFactory.java index c930b806a4fc..46fe5dbf1e86 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcFactory.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcFactory.java @@ -26,14 +26,19 @@ import java.util.Map; import java.util.Stack; +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.ReduceSinkOperator; 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.LineageInfo; import org.apache.hadoop.hive.ql.hooks.LineageInfo.BaseColumnInfo; import org.apache.hadoop.hive.ql.hooks.LineageInfo.Dependency; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.DependencyType; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.Predicate; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.TableAliasInfo; import org.apache.hadoop.hive.ql.lib.DefaultGraphWalker; import org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher; import org.apache.hadoop.hive.ql.lib.Dispatcher; @@ -43,6 +48,7 @@ import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx; import org.apache.hadoop.hive.ql.lib.Rule; import org.apache.hadoop.hive.ql.lib.RuleRegExp; +import org.apache.hadoop.hive.ql.metadata.Table; import org.apache.hadoop.hive.ql.parse.SemanticException; import org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc; import org.apache.hadoop.hive.ql.plan.ExprNodeConstantDesc; @@ -162,6 +168,91 @@ public static NodeProcessor getColumnProcessor() { return new ColumnExprProcessor(); } + private static boolean findSourceColumn( + LineageCtx lctx, Predicate cond, String tabAlias, String alias) { + for (Map.Entry> topOpMap: lctx + .getParseCtx().getTopOps().entrySet()) { + Operator topOp = topOpMap.getValue(); + if (topOp instanceof TableScanOperator) { + TableScanOperator tableScanOp = (TableScanOperator) topOp; + Table tbl = tableScanOp.getConf().getTableMetadata(); + if (tbl.getTableName().equals(tabAlias) + || tabAlias.equals(tableScanOp.getConf().getAlias())) { + for (FieldSchema column: tbl.getCols()) { + if (column.getName().equals(alias)) { + TableAliasInfo table = new TableAliasInfo(); + table.setTable(tbl.getTTable()); + table.setAlias(tabAlias); + BaseColumnInfo colInfo = new BaseColumnInfo(); + colInfo.setColumn(column); + colInfo.setTabAlias(table); + cond.getBaseCols().add(colInfo); + return true; + } + } + } + } + } + return false; + } + + /** + * Get the expression string of an expression node. + */ + public static String getExprString(RowSchema rs, ExprNodeDesc expr, + LineageCtx lctx, Operator inpOp, Predicate cond) { + if (expr instanceof ExprNodeColumnDesc) { + ExprNodeColumnDesc col = (ExprNodeColumnDesc) expr; + String columnName = col.getColumn(); + ColumnInfo ci = rs.getColumnInfo(columnName); + String alias = ci != null ? ci.getAlias() : columnName; + String internalName = ci != null ? ci.getInternalName() : columnName; + Dependency dep = lctx.getIndex().getDependency(inpOp, internalName); + String tabAlias = ci != null ? ci.getTabAlias() : col.getTabAlias(); + if ((tabAlias == null || tabAlias.startsWith("_") || tabAlias.startsWith("$")) + && (dep != null && dep.getType() == DependencyType.SIMPLE)) { + List baseCols = dep.getBaseCols(); + if (baseCols != null && !baseCols.isEmpty()) { + BaseColumnInfo baseCol = baseCols.get(0); + tabAlias = baseCol.getTabAlias().getAlias(); + alias = baseCol.getColumn().getName(); + } + } + if (tabAlias != null && tabAlias.length() > 0 + && !tabAlias.startsWith("_") && !tabAlias.startsWith("$")) { + if (cond != null && !findSourceColumn(lctx, cond, tabAlias, alias) && dep != null) { + cond.getBaseCols().addAll(dep.getBaseCols()); + } + return tabAlias + "." + alias; + } + + if (dep != null) { + if (cond != null) { + cond.getBaseCols().addAll(dep.getBaseCols()); + } + if (dep.getExpr() != null) { + return dep.getExpr(); + } + } + if (alias.startsWith("_")) { + ci = inpOp.getSchema().getColumnInfo(columnName); + if (ci != null) { + alias = ci.getAlias(); + } + } + return alias; + } else if (expr instanceof ExprNodeGenericFuncDesc) { + ExprNodeGenericFuncDesc func = (ExprNodeGenericFuncDesc) expr; + List children = func.getChildren(); + String[] childrenExprStrings = new String[children.size()]; + for (int i = 0; i < childrenExprStrings.length; i++) { + childrenExprStrings[i] = getExprString(rs, children.get(i), lctx, inpOp, cond); + } + return func.getGenericUDF().getDisplayString(childrenExprStrings); + } + return expr.getExprString(); + } + /** * Gets the expression dependencies for the expression. * diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/Generator.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/Generator.java index 51bef04e95e2..9a5cf5560970 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/Generator.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/Generator.java @@ -23,6 +23,7 @@ import java.util.Map; import org.apache.hadoop.hive.ql.exec.CommonJoinOperator; +import org.apache.hadoop.hive.ql.exec.FilterOperator; import org.apache.hadoop.hive.ql.exec.GroupByOperator; import org.apache.hadoop.hive.ql.exec.LateralViewJoinOperator; import org.apache.hadoop.hive.ql.exec.MapJoinOperator; @@ -42,6 +43,7 @@ import org.apache.hadoop.hive.ql.lib.Rule; import org.apache.hadoop.hive.ql.lib.RuleRegExp; import org.apache.hadoop.hive.ql.optimizer.Transform; +import org.apache.hadoop.hive.ql.optimizer.lineage.LineageCtx.Index; import org.apache.hadoop.hive.ql.parse.ParseContext; import org.apache.hadoop.hive.ql.parse.SemanticException; import org.apache.hadoop.hive.ql.session.SessionState; @@ -59,8 +61,11 @@ public class Generator implements Transform { @Override public ParseContext transform(ParseContext pctx) throws SemanticException { + Index index = SessionState.get() != null ? + SessionState.get().getLineageState().getIndex() : new Index(); + // Create the lineage context - LineageCtx lCtx = new LineageCtx(pctx); + LineageCtx lCtx = new LineageCtx(pctx, index); Map opRules = new LinkedHashMap(); opRules.put(new RuleRegExp("R1", TableScanOperator.getOperatorName() + "%"), @@ -83,7 +88,9 @@ public ParseContext transform(ParseContext pctx) throws SemanticException { opRules.put(new RuleRegExp("R9", LateralViewJoinOperator.getOperatorName() + "%"), OpProcFactory.getLateralViewJoinProc()); opRules.put(new RuleRegExp("R10", PTFOperator.getOperatorName() + "%"), - OpProcFactory.getTransformProc()); + OpProcFactory.getTransformProc()); + opRules.put(new RuleRegExp("R11", FilterOperator.getOperatorName() + "%"), + OpProcFactory.getFilterProc()); // The dispatcher fires the processor corresponding to the closest matching rule and passes the context along Dispatcher disp = new DefaultRuleDispatcher(OpProcFactory.getDefaultProc(), opRules, lCtx); @@ -94,11 +101,6 @@ public ParseContext transform(ParseContext pctx) throws SemanticException { topNodes.addAll(pctx.getTopOps().values()); ogw.startWalking(topNodes, null); - // Transfer the index from the lineage context to the session state. - if (SessionState.get() != null) { - SessionState.get().getLineageState().setIndex(lCtx.getIndex()); - } - return pctx; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/LineageCtx.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/LineageCtx.java index cef24e36c329..d26d8da839a0 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/LineageCtx.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/LineageCtx.java @@ -19,6 +19,7 @@ package org.apache.hadoop.hive.ql.optimizer.lineage; import java.util.ArrayList; +import java.util.HashMap; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.Map; @@ -26,9 +27,11 @@ import org.apache.hadoop.hive.ql.exec.ColumnInfo; import org.apache.hadoop.hive.ql.exec.Operator; +import org.apache.hadoop.hive.ql.exec.SelectOperator; import org.apache.hadoop.hive.ql.hooks.LineageInfo; import org.apache.hadoop.hive.ql.hooks.LineageInfo.BaseColumnInfo; import org.apache.hadoop.hive.ql.hooks.LineageInfo.Dependency; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.Predicate; import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx; import org.apache.hadoop.hive.ql.parse.ParseContext; import org.apache.hadoop.hive.ql.plan.OperatorDesc; @@ -43,11 +46,6 @@ public class LineageCtx implements NodeProcessorCtx { public static class Index { - /** - * Serial Version UID. - */ - private static final long serialVersionUID = 1L; - /** * The map contains an index from the (operator, columnInfo) to the * dependency vector for that tuple. This is used to generate the @@ -56,6 +54,13 @@ public static class Index { private final Map, LinkedHashMap> depMap; + /** + * A map from operator to the conditions strings. + */ + private final Map, Set> condMap; + + private SelectOperator finalSelectOp; + /** * Constructor. */ @@ -63,6 +68,7 @@ public Index() { depMap = new LinkedHashMap, LinkedHashMap>(); + condMap = new HashMap, Set>(); } /** @@ -82,6 +88,28 @@ public Dependency getDependency(Operator op, return colMap.get(col); } + /** + * Gets the dependency for a tuple of an operator, + * and a ColumnInfo with specified internal name. + * + * @param op The operator whose dependency is being inspected. + * @param internalName The internal name of the column info + * @return Dependency for that particular operator, ColumnInfo tuple. + * null if no dependency is found. + */ + public Dependency getDependency( + Operator op, String internalName) { + Map colMap = depMap.get(op); + if (colMap != null) { + for (Map.Entry e: colMap.entrySet()) { + if (e.getKey().getInternalName().equals(internalName)) { + return e.getValue(); + } + } + } + return null; + } + /** * Puts the dependency for an operator, columninfo tuple. * @param op The operator whose dependency is being inserted. @@ -124,7 +152,43 @@ public void mergeDependency(Operator op, } } + public Map getDependencies(Operator op) { + return depMap.get(op); + } + + public void addPredicate(Operator op, Predicate cond) { + Set conds = condMap.get(op); + if (conds == null) { + conds = new LinkedHashSet(); + condMap.put(op, conds); + } + conds.add(cond); + } + + public void copyPredicates(Operator srcOp, + Operator tgtOp) { + Set conds = getPredicates(srcOp); + if (conds != null) { + for (Predicate cond: conds) { + addPredicate(tgtOp, cond); + } + } + } + + public Set getPredicates(Operator op) { + return condMap.get(op); + } + + public void setFinalSelectOp(SelectOperator sop) { + finalSelectOp = sop; + } + + public SelectOperator getFinalSelectOp() { + return finalSelectOp; + } + public void clear() { + finalSelectOp = null; depMap.clear(); } } @@ -145,9 +209,10 @@ public void clear() { * Constructor. * * @param pctx The parse context that is used to get table metadata information. + * @param index The dependency map. */ - public LineageCtx(ParseContext pctx) { - index = new Index(); + public LineageCtx(ParseContext pctx, Index index) { + this.index = index; this.pctx = pctx; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java index 5957ac01296c..f670db89cfbc 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java @@ -27,18 +27,20 @@ import java.util.Set; import java.util.Stack; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.hadoop.hive.metastore.api.FieldSchema; import org.apache.hadoop.hive.metastore.api.Table; import org.apache.hadoop.hive.ql.exec.ColumnInfo; +import org.apache.hadoop.hive.ql.exec.FileSinkOperator; +import org.apache.hadoop.hive.ql.exec.FilterOperator; import org.apache.hadoop.hive.ql.exec.ForwardOperator; import org.apache.hadoop.hive.ql.exec.GroupByOperator; import org.apache.hadoop.hive.ql.exec.JoinOperator; import org.apache.hadoop.hive.ql.exec.LateralViewJoinOperator; +import org.apache.hadoop.hive.ql.exec.LimitOperator; import org.apache.hadoop.hive.ql.exec.Operator; import org.apache.hadoop.hive.ql.exec.ReduceSinkOperator; import org.apache.hadoop.hive.ql.exec.RowSchema; +import org.apache.hadoop.hive.ql.exec.ScriptOperator; import org.apache.hadoop.hive.ql.exec.SelectOperator; import org.apache.hadoop.hive.ql.exec.TableScanOperator; import org.apache.hadoop.hive.ql.exec.Utilities; @@ -46,6 +48,7 @@ import org.apache.hadoop.hive.ql.hooks.LineageInfo.BaseColumnInfo; import org.apache.hadoop.hive.ql.hooks.LineageInfo.Dependency; import org.apache.hadoop.hive.ql.hooks.LineageInfo.DependencyType; +import org.apache.hadoop.hive.ql.hooks.LineageInfo.Predicate; import org.apache.hadoop.hive.ql.hooks.LineageInfo.TableAliasInfo; import org.apache.hadoop.hive.ql.lib.Node; import org.apache.hadoop.hive.ql.lib.NodeProcessor; @@ -56,6 +59,8 @@ import org.apache.hadoop.hive.ql.parse.SemanticException; import org.apache.hadoop.hive.ql.plan.AggregationDesc; import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; +import org.apache.hadoop.hive.ql.plan.FilterDesc; +import org.apache.hadoop.hive.ql.plan.JoinCondDesc; import org.apache.hadoop.hive.ql.plan.JoinDesc; import org.apache.hadoop.hive.ql.plan.OperatorDesc; import org.apache.hadoop.hive.ql.plan.ReduceSinkDesc; @@ -72,6 +77,7 @@ public class OpProcFactory { * * @return Operator The parent operator in the current path. */ + @SuppressWarnings("unchecked") protected static Operator getParent(Stack stack) { return (Operator)Utils.getNthAncestor(stack, 1); } @@ -89,8 +95,10 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, LineageCtx lCtx = (LineageCtx) procCtx; // The operators + @SuppressWarnings("unchecked") Operator op = (Operator)nd; Operator inpOp = getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, op); // Create a single dependency list by concatenating the dependencies of all // the cols @@ -105,16 +113,27 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Dependency d = lCtx.getIndex().getDependency(inpOp, ci); if (d != null) { new_type = LineageCtx.getNewDependencyType(d.getType(), new_type); - col_set.addAll(d.getBaseCols()); + if (!ci.isHiddenVirtualCol()) { + col_set.addAll(d.getBaseCols()); + } } } dep.setType(new_type); dep.setBaseCols(new ArrayList(col_set)); + boolean isScript = op instanceof ScriptOperator; + // This dependency is then set for all the colinfos of the script operator for(ColumnInfo ci : op.getSchema().getSignature()) { - lCtx.getIndex().putDependency(op, ci, dep); + Dependency d = dep; + if (!isScript) { + Dependency dep_ci = lCtx.getIndex().getDependency(inpOp, ci); + if (dep_ci != null) { + d = dep_ci; + } + } + lCtx.getIndex().putDependency(op, ci, d); } return null; @@ -167,8 +186,6 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // Populate the dependency dep.setType(LineageInfo.DependencyType.SIMPLE); - // TODO: Find out how to get the expression here. - dep.setExpr(null); dep.setBaseCols(new ArrayList()); dep.getBaseCols().add(bci); @@ -189,7 +206,7 @@ public static class JoinLineage extends DefaultLineage implements NodeProcessor public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { - // Assert that there is atleast one item in the stack. This should never + // Assert that there is at least one item in the stack. This should never // be called for leafs. assert(!stack.isEmpty()); @@ -200,6 +217,12 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // The input operator to the join is always a reduce sink operator ReduceSinkOperator inpOp = (ReduceSinkOperator)getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, op); + Predicate cond = getPredicate(op, lCtx); + if (cond != null) { + lCtx.getIndex().addPredicate(op, cond); + } + ReduceSinkDesc rd = inpOp.getConf(); int tag = rd.getTag(); @@ -221,6 +244,59 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, return null; } + private Predicate getPredicate(JoinOperator jop, LineageCtx lctx) { + List> parentOperators = jop.getParentOperators(); + JoinDesc jd = jop.getConf(); + ExprNodeDesc [][] joinKeys = jd.getJoinKeys(); + if (joinKeys == null || parentOperators == null || parentOperators.size() < 2) { + return null; + } + LineageCtx.Index index = lctx.getIndex(); + for (Operator op: parentOperators) { + if (index.getDependencies(op) == null) { + return null; + } + } + Predicate cond = new Predicate(); + JoinCondDesc[] conds = jd.getConds(); + int parents = parentOperators.size(); + StringBuilder sb = new StringBuilder("("); + for (int i = 0; i < conds.length; i++) { + if (i != 0) { + sb.append(" AND "); + } + int left = conds[i].getLeft(); + int right = conds[i].getRight(); + if (joinKeys.length < left + || joinKeys[left].length == 0 + || joinKeys.length < right + || joinKeys[right].length == 0 + || parents < left + || parents < right) { + return null; + } + ExprNodeDesc expr = joinKeys[left][0]; + Operator op = parentOperators.get(left); + List> p = op.getParentOperators(); + if (p == null || p.isEmpty()) { + return null; + } + sb.append(ExprProcFactory.getExprString(op.getSchema(), + expr, lctx, p.get(0), cond)); + sb.append(" = "); + expr = joinKeys[right][0]; + op = parentOperators.get(right); + p = op.getParentOperators(); + if (p == null || p.isEmpty()) { + return null; + } + sb.append(ExprProcFactory.getExprString(op.getSchema(), + expr, lctx, p.get(0), cond)); + } + sb.append(")"); + cond.setExpr(sb.toString()); + return cond; + } } /** @@ -231,7 +307,7 @@ public static class LateralViewJoinLineage extends DefaultLineage implements Nod public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { - // Assert that there is atleast one item in the stack. This should never + // Assert that there is at least one item in the stack. This should never // be called for leafs. assert(!stack.isEmpty()); @@ -241,6 +317,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, boolean isUdtfPath = true; Operator inpOp = getParent(stack); ArrayList cols = inpOp.getSchema().getSignature(); + lCtx.getIndex().copyPredicates(inpOp, op); if (inpOp instanceof SelectOperator) { isUdtfPath = false; @@ -295,11 +372,31 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // Otherwise we treat this as a normal select operator and look at // the expressions. - ArrayList col_infos = sop.getSchema().getSignature(); + Operator inpOp = getParent(stack); + lctx.getIndex().copyPredicates(inpOp, sop); + + RowSchema rs = sop.getSchema(); + ArrayList col_infos = rs.getSignature(); int cnt = 0; for(ExprNodeDesc expr : sop.getConf().getColList()) { - lctx.getIndex().putDependency(sop, col_infos.get(cnt++), - ExprProcFactory.getExprDependency(lctx, getParent(stack), expr)); + Dependency dep = ExprProcFactory.getExprDependency(lctx, inpOp, expr); + if (dep != null && dep.getExpr() == null && (dep.getBaseCols().isEmpty() + || dep.getType() != LineageInfo.DependencyType.SIMPLE)) { + dep.setExpr(ExprProcFactory.getExprString(rs, expr, lctx, inpOp, null)); + } + lctx.getIndex().putDependency(sop, col_infos.get(cnt++), dep); + } + + Operator op = null; + if (!sop.getChildOperators().isEmpty()) { + op = sop.getChildOperators().get(0); + if (!op.getChildOperators().isEmpty() && op instanceof LimitOperator) { + op = op.getChildOperators().get(0); + } + } + if (op == null || (op.getChildOperators().isEmpty() + && op instanceof FileSinkOperator)) { + lctx.getIndex().setFinalSelectOp(sop); } return null; @@ -319,6 +416,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, GroupByOperator gop = (GroupByOperator)nd; ArrayList col_infos = gop.getSchema().getSignature(); Operator inpOp = getParent(stack); + lctx.getIndex().copyPredicates(inpOp, gop); int cnt = 0; for(ExprNodeDesc expr : gop.getConf().getKeys()) { @@ -326,21 +424,64 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, ExprProcFactory.getExprDependency(lctx, inpOp, expr)); } + // If this is a reduce side GroupBy operator, check if there is + // a corresponding map side one. If so, some expression could have + // already been resolved in the map side. + boolean reduceSideGop = (inpOp instanceof ReduceSinkOperator) + && (Utils.getNthAncestor(stack, 2) instanceof GroupByOperator); + + RowSchema rs = gop.getSchema(); for(AggregationDesc agg : gop.getConf().getAggregators()) { // Concatenate the dependencies of all the parameters to // create the new dependency Dependency dep = new Dependency(); DependencyType new_type = LineageInfo.DependencyType.EXPRESSION; - // TODO: Get the actual string here. - dep.setExpr(null); + StringBuilder sb = new StringBuilder(); + boolean first = true; LinkedHashSet bci_set = new LinkedHashSet(); for(ExprNodeDesc expr : agg.getParameters()) { + if (first) { + first = false; + } else { + sb.append(", "); + } Dependency expr_dep = ExprProcFactory.getExprDependency(lctx, inpOp, expr); - if (expr_dep != null) { + if (expr_dep != null && !expr_dep.getBaseCols().isEmpty()) { new_type = LineageCtx.getNewDependencyType(expr_dep.getType(), new_type); bci_set.addAll(expr_dep.getBaseCols()); + if (expr_dep.getType() == LineageInfo.DependencyType.SIMPLE) { + BaseColumnInfo col = expr_dep.getBaseCols().get(0); + Table t = col.getTabAlias().getTable(); + if (t != null) { + sb.append(t.getDbName()).append(".").append(t.getTableName()).append("."); + } + sb.append(col.getColumn().getName()); + } + } + if (expr_dep == null || expr_dep.getBaseCols().isEmpty() + || expr_dep.getType() != LineageInfo.DependencyType.SIMPLE) { + sb.append(expr_dep != null && expr_dep.getExpr() != null ? expr_dep.getExpr() : + ExprProcFactory.getExprString(rs, expr, lctx, inpOp, null)); } } + String expr = sb.toString(); + String udafName = agg.getGenericUDAFName(); + if (!(reduceSideGop && expr.startsWith(udafName))) { + sb.setLength(0); // reset the buffer + sb.append(udafName); + sb.append("("); + if (agg.getDistinct()) { + sb.append("DISTINCT "); + } + sb.append(expr); + if (first) { + // No parameter, count(*) + sb.append("*"); + } + sb.append(")"); + expr = sb.toString(); + } + dep.setExpr(expr); // If the bci_set is empty, this means that the inputs to this // aggregate function were all constants (e.g. count(1)). In this case @@ -390,13 +531,11 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, */ public static class UnionLineage extends DefaultLineage implements NodeProcessor { - protected static final Log LOG = LogFactory.getLog(OpProcFactory.class.getName()); - @SuppressWarnings("unchecked") @Override public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { - // Assert that there is atleast one item in the stack. This should never + // Assert that there is at least one item in the stack. This should never // be called for leafs. assert(!stack.isEmpty()); @@ -407,6 +546,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // Get the row schema of the input operator. // The row schema of the parent operator Operator inpOp = getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, op); RowSchema rs = op.getSchema(); ArrayList inp_cols = inpOp.getSchema().getSignature(); int cnt = 0; @@ -425,13 +565,10 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, */ public static class ReduceSinkLineage implements NodeProcessor { - protected static final Log LOG = LogFactory.getLog(OpProcFactory.class.getName()); - - @SuppressWarnings("unchecked") @Override public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { - // Assert that there is atleast one item in the stack. This should never + // Assert that there is at least one item in the stack. This should never // be called for leafs. assert(!stack.isEmpty()); @@ -440,6 +577,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, ReduceSinkOperator rop = (ReduceSinkOperator)nd; Operator inpOp = getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, rop); int cnt = 0; // The keys are included only in case the reduce sink feeds into @@ -491,19 +629,57 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, } } + /** + * Filter processor. + */ + public static class FilterLineage implements NodeProcessor { + + @Override + public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, + Object... nodeOutputs) throws SemanticException { + // Assert that there is at least one item in the stack. This should never + // be called for leafs. + assert(!stack.isEmpty()); + + // LineageCtx + LineageCtx lCtx = (LineageCtx) procCtx; + FilterOperator fop = (FilterOperator)nd; + + // Get the row schema of the input operator. + // The row schema of the parent operator + Operator inpOp = getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, fop); + FilterDesc filterDesc = fop.getConf(); + RowSchema rs = fop.getSchema(); + if (!filterDesc.isGenerated()) { + Predicate cond = new Predicate(); + cond.setExpr(ExprProcFactory.getExprString( + rs, filterDesc.getPredicate(), lCtx, inpOp, cond)); + lCtx.getIndex().addPredicate(fop, cond); + } + + ArrayList inp_cols = inpOp.getSchema().getSignature(); + int cnt = 0; + for(ColumnInfo ci : rs.getSignature()) { + lCtx.getIndex().putDependency(fop, ci, + lCtx.getIndex().getDependency(inpOp, inp_cols.get(cnt++))); + } + + return null; + } + } + /** * Default processor. This basically passes the input dependencies as such * to the output dependencies. */ public static class DefaultLineage implements NodeProcessor { - protected static final Log LOG = LogFactory.getLog(OpProcFactory.class.getName()); - @SuppressWarnings("unchecked") @Override public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { - // Assert that there is atleast one item in the stack. This should never + // Assert that there is at least one item in the stack. This should never // be called for leafs. assert(!stack.isEmpty()); @@ -514,6 +690,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // Get the row schema of the input operator. // The row schema of the parent operator Operator inpOp = getParent(stack); + lCtx.getIndex().copyPredicates(inpOp, op); RowSchema rs = op.getSchema(); ArrayList inp_cols = inpOp.getSchema().getSignature(); int cnt = 0; @@ -561,4 +738,7 @@ public static NodeProcessor getDefaultProc() { return new DefaultLineage(); } + public static NodeProcessor getFilterProc() { + return new FilterLineage(); + } } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index f41668b4acc0..b02374ed911c 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -114,8 +114,11 @@ import org.apache.hadoop.hive.ql.metadata.Table; import org.apache.hadoop.hive.ql.metadata.VirtualColumn; import org.apache.hadoop.hive.ql.optimizer.Optimizer; +import org.apache.hadoop.hive.ql.optimizer.Transform; import org.apache.hadoop.hive.ql.optimizer.calcite.CalciteSemanticException; import org.apache.hadoop.hive.ql.optimizer.calcite.CalciteSemanticException.UnsupportedFeature; +import org.apache.hadoop.hive.ql.optimizer.calcite.translator.HiveOpConverterPostProc; +import org.apache.hadoop.hive.ql.optimizer.lineage.Generator; import org.apache.hadoop.hive.ql.optimizer.unionproc.UnionProcContext; import org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.TableSpec.SpecType; import org.apache.hadoop.hive.ql.parse.CalcitePlanner.ASTSearcher; @@ -206,7 +209,6 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory; import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils; import org.apache.hadoop.hive.shims.HadoopShims; -import org.apache.hadoop.hive.shims.ShimLoader; import org.apache.hadoop.hive.shims.Utils; import org.apache.hadoop.io.IOUtils; import org.apache.hadoop.mapred.InputFormat; @@ -2886,8 +2888,9 @@ private Operator genNotNullFilterForJoinSourcePlan(QB qb, Operator input, return input; } - Operator output = putOpInsertMap(OperatorFactory.getAndMakeChild( - new FilterDesc(filterPred, false), + FilterDesc filterDesc = new FilterDesc(filterPred, false); + filterDesc.setGenerated(true); + Operator output = putOpInsertMap(OperatorFactory.getAndMakeChild(filterDesc, new RowSchema(inputRR.getColumnInfos()), input), inputRR); if (LOG.isDebugEnabled()) { @@ -5394,6 +5397,7 @@ private Operator genGroupByPlan1ReduceMultiGBY(List dests, QB qb, Operat OpParseContext inputCtx = opParseCtx.get(input); RowResolver inputRR = inputCtx.getRowResolver(); FilterDesc orFilterDesc = new FilterDesc(previous, false); + orFilterDesc.setGenerated(true); selectInput = putOpInsertMap(OperatorFactory.getAndMakeChild( orFilterDesc, new RowSchema( @@ -9459,9 +9463,11 @@ private Operator genTablePlan(String alias, QB qb) throws SemanticException { LOG.info("No need for sample filter"); ExprNodeDesc samplePredicate = genSamplePredicate(ts, tabBucketCols, colsEqual, alias, rwsch, qb.getMetaData(), null); - op = OperatorFactory.getAndMakeChild(new FilterDesc( - samplePredicate, true, new SampleDesc(ts.getNumerator(), ts - .getDenominator(), tabBucketCols, true)), + FilterDesc filterDesc = new FilterDesc( + samplePredicate, true, new SampleDesc(ts.getNumerator(), + ts.getDenominator(), tabBucketCols, true)); + filterDesc.setGenerated(true); + op = OperatorFactory.getAndMakeChild(filterDesc, new RowSchema(rwsch.getColumnInfos()), top); } else { // need to add filter @@ -9469,8 +9475,9 @@ samplePredicate, true, new SampleDesc(ts.getNumerator(), ts LOG.info("Need sample filter"); ExprNodeDesc samplePredicate = genSamplePredicate(ts, tabBucketCols, colsEqual, alias, rwsch, qb.getMetaData(), null); - op = OperatorFactory.getAndMakeChild(new FilterDesc( - samplePredicate, true), + FilterDesc filterDesc = new FilterDesc(samplePredicate, true); + filterDesc.setGenerated(true); + op = OperatorFactory.getAndMakeChild(filterDesc, new RowSchema(rwsch.getColumnInfos()), top); } } else { @@ -9499,11 +9506,12 @@ samplePredicate, true, new SampleDesc(ts.getNumerator(), ts qb.getParseInfo().setTabSample(alias, tsSample); ExprNodeDesc samplePred = genSamplePredicate(tsSample, tab .getBucketCols(), true, alias, rwsch, qb.getMetaData(), null); - op = OperatorFactory - .getAndMakeChild(new FilterDesc(samplePred, true, - new SampleDesc(tsSample.getNumerator(), tsSample - .getDenominator(), tab.getBucketCols(), true)), - new RowSchema(rwsch.getColumnInfos()), top); + FilterDesc filterDesc = new FilterDesc(samplePred, true, + new SampleDesc(tsSample.getNumerator(), tsSample + .getDenominator(), tab.getBucketCols(), true)); + filterDesc.setGenerated(true); + op = OperatorFactory.getAndMakeChild(filterDesc, + new RowSchema(rwsch.getColumnInfos()), top); LOG.info("No need for sample filter"); } else { // The table is not bucketed, add a dummy filter :: rand() @@ -9517,8 +9525,9 @@ samplePredicate, true, new SampleDesc(ts.getNumerator(), ts .valueOf(460476415))); ExprNodeDesc samplePred = genSamplePredicate(tsSample, null, false, alias, rwsch, qb.getMetaData(), randFunc); - op = OperatorFactory.getAndMakeChild(new FilterDesc( - samplePred, true), + FilterDesc filterDesc = new FilterDesc(samplePred, true); + filterDesc.setGenerated(true); + op = OperatorFactory.getAndMakeChild(filterDesc, new RowSchema(rwsch.getColumnInfos()), top); } } @@ -10150,6 +10159,18 @@ void analyzeInternal(ASTNode ast, PlannerContext plannerCtx) throws SemanticExce } catch (HiveException e) { throw new SemanticException(e); } + + // Generate lineage info for create view statements + // if LineageLogger hook is configured. + if (HiveConf.getVar(conf, HiveConf.ConfVars.POSTEXECHOOKS).contains( + "org.apache.hadoop.hive.ql.hooks.LineageLogger")) { + ArrayList transformations = new ArrayList(); + transformations.add(new HiveOpConverterPostProc()); + transformations.add(new Generator()); + for (Transform t : transformations) { + pCtx = t.transform(pCtx); + } + } return; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/FilterDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/FilterDesc.java index 3a1a4af68511..5408dc87d309 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/FilterDesc.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/FilterDesc.java @@ -82,6 +82,7 @@ public String toString() { private transient SampleDesc sampleDescr; //Is this a filter that should perform a comparison for sorted searches private boolean isSortedFilter; + private transient boolean isGenerated; public FilterDesc() { } @@ -148,6 +149,19 @@ public void setSortedFilter(boolean isSortedFilter) { this.isSortedFilter = isSortedFilter; } + /** + * Some filters are generated or implied, which means it is not in the query. + * It is added by the analyzer. For example, when we do an inner join, we add + * filters to exclude those rows with null join key values. + */ + public boolean isGenerated() { + return isGenerated; + } + + public void setGenerated(boolean isGenerated) { + this.isGenerated = isGenerated; + } + @Override public Object clone() { FilterDesc filterDesc = new FilterDesc(getPredicate().clone(), getIsSamplingPred()); diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java index 3a4ea2fdf180..64eed68d2533 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java @@ -309,6 +309,10 @@ public List getCondsList() { return l; } + public ExprNodeDesc [][] getJoinKeys() { + return joinKeys; + } + public JoinCondDesc[] getConds() { return conds; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/session/LineageState.java b/ql/src/java/org/apache/hadoop/hive/ql/session/LineageState.java index e716ed282843..223f0ea92928 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/session/LineageState.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/session/LineageState.java @@ -62,6 +62,7 @@ public class LineageState { public LineageState() { dirToFop = new HashMap(); linfo = new LineageInfo(); + index = new Index(); } /** @@ -109,12 +110,12 @@ public LineageInfo getLineageInfo() { } /** - * Sets the index for the lineage state. + * Gets the index for the lineage state. * - * @param index The index derived from lineage context. + * @return Index. */ - public void setIndex(Index index) { - this.index = index; + public Index getIndex() { + return index; } /** diff --git a/ql/src/test/org/apache/hadoop/hive/ql/parse/TestUpdateDeleteSemanticAnalyzer.java b/ql/src/test/org/apache/hadoop/hive/ql/parse/TestUpdateDeleteSemanticAnalyzer.java index e1cab7901eb1..f0435cb68e14 100644 --- a/ql/src/test/org/apache/hadoop/hive/ql/parse/TestUpdateDeleteSemanticAnalyzer.java +++ b/ql/src/test/org/apache/hadoop/hive/ql/parse/TestUpdateDeleteSemanticAnalyzer.java @@ -280,7 +280,7 @@ private ReturnInfo parseAndAnalyze(String query, String testName) // validate the plan sem.validate(); - QueryPlan plan = new QueryPlan(query, sem, 0L, testName, null); + QueryPlan plan = new QueryPlan(query, sem, 0L, testName, null, null); return new ReturnInfo(tree, sem, plan); } diff --git a/ql/src/test/queries/clientpositive/lineage2.q b/ql/src/test/queries/clientpositive/lineage2.q new file mode 100644 index 000000000000..6bcd1d7d440f --- /dev/null +++ b/ql/src/test/queries/clientpositive/lineage2.q @@ -0,0 +1,116 @@ +set hive.exec.post.hooks=org.apache.hadoop.hive.ql.hooks.LineageLogger; + +drop table if exists src2; +create table src2 as select key key2, value value2 from src1; + +select * from src1 where key is not null and value is not null limit 3; +select * from src1 where key > 10 and value > 'val' order by key limit 5; + +drop table if exists dest1; +create table dest1 as select * from src1; +insert into table dest1 select * from src2; + +select key k, dest1.value from dest1; +select key from src1 union select key2 from src2 order by key; +select key k from src1 union select key2 from src2 order by k; + +select key, count(1) a from dest1 group by key; +select key k, count(*) from dest1 group by key; +select key k, count(value) from dest1 group by key; +select value, max(length(key)) from dest1 group by value; +select value, max(length(key)) from dest1 group by value order by value limit 5; + +select key, length(value) from dest1; +select length(value) + 3 from dest1; +select 5 from dest1; +select 3 * 5 from dest1; + +drop table if exists dest2; +create table dest2 as select * from src1 JOIN src2 ON src1.key = src2.key2; +insert overwrite table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2; +insert into table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2; +insert into table dest2 + select * from src1 JOIN src2 ON length(src1.value) = length(src2.value2) + 1; + +select * from src1 where length(key) > 2; +select * from src1 where length(key) > 2 and value > 'a'; + +drop table if exists dest3; +create table dest3 as + select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 1; +insert overwrite table dest2 + select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 3; + +drop table if exists dest_l1; +CREATE TABLE dest_l1(key INT, value STRING) STORED AS TEXTFILE; + +INSERT OVERWRITE TABLE dest_l1 +SELECT j.* +FROM (SELECT t1.key, p1.value + FROM src1 t1 + LEFT OUTER JOIN src p1 + ON (t1.key = p1.key) + UNION ALL + SELECT t2.key, p2.value + FROM src1 t2 + LEFT OUTER JOIN src p2 + ON (t2.key = p2.key)) j; + +drop table if exists emp; +drop table if exists dept; +drop table if exists project; +drop table if exists tgt; +create table emp(emp_id int, name string, mgr_id int, dept_id int); +create table dept(dept_id int, dept_name string); +create table project(project_id int, project_name string); +create table tgt(dept_name string, name string, + emp_id int, mgr_id int, proj_id int, proj_name string); + +INSERT INTO TABLE tgt +SELECT emd.dept_name, emd.name, emd.emp_id, emd.mgr_id, p.project_id, p.project_name +FROM ( + SELECT d.dept_name, em.name, em.emp_id, em.mgr_id, em.dept_id + FROM ( + SELECT e.name, e.dept_id, e.emp_id emp_id, m.emp_id mgr_id + FROM emp e JOIN emp m ON e.emp_id = m.emp_id + ) em + JOIN dept d ON d.dept_id = em.dept_id + ) emd JOIN project p ON emd.dept_id = p.project_id; + +drop table if exists dest_l2; +create table dest_l2 (id int, c1 tinyint, c2 int, c3 bigint) stored as textfile; +insert into dest_l2 values(0, 1, 100, 10000); + +select * from ( + select c1 + c2 x from dest_l2 + union all + select sum(c3) y from (select c3 from dest_l2) v1) v2 order by x; + +drop table if exists dest_l3; +create table dest_l3 (id int, c1 string, c2 string, c3 int) stored as textfile; +insert into dest_l3 values(0, "s1", "s2", 15); + +select sum(a.c1) over (partition by a.c1 order by a.id) +from dest_l2 a +where a.c2 != 10 +group by a.c1, a.c2, a.id +having count(a.c2) > 0; + +select sum(a.c1), count(b.c1), b.c2, b.c3 +from dest_l2 a join dest_l3 b on (a.id = b.id) +where a.c2 != 10 and b.c3 > 0 +group by a.c1, a.c2, a.id, b.c1, b.c2, b.c3 +having count(a.c2) > 0 +order by b.c3 limit 5; + +drop table if exists t; +create table t as +select distinct a.c2, a.c3 from dest_l2 a +inner join dest_l3 b on (a.id = b.id) +where a.id > 0 and b.c3 = 15; + +SELECT substr(src1.key,1,1), count(DISTINCT substr(src1.value,5)), +concat(substr(src1.key,1,1),sum(substr(src1.value,5))) +from src1 +GROUP BY substr(src1.key,1,1); + diff --git a/ql/src/test/queries/clientpositive/lineage3.q b/ql/src/test/queries/clientpositive/lineage3.q new file mode 100644 index 000000000000..db9c9641ff74 --- /dev/null +++ b/ql/src/test/queries/clientpositive/lineage3.q @@ -0,0 +1,162 @@ +set hive.exec.post.hooks=org.apache.hadoop.hive.ql.hooks.LineageLogger; + +drop table if exists t; +create table t as +select * from + (select * from + (select key from src1 limit 1) v1) v2; + +drop table if exists dest_l1; +create table dest_l1(a int, b varchar(128)) + partitioned by (ds string) clustered by (a) into 2 buckets; + +insert into table dest_l1 partition (ds='today') +select cint, cast(cstring1 as varchar(128)) as cs +from alltypesorc +where cint is not null and cint < 0 order by cint, cs limit 5; + +insert into table dest_l1 partition (ds='tomorrow') +select min(cint), cast(min(cstring1) as varchar(128)) as cs +from alltypesorc +where cint is not null and cboolean1 = true +group by csmallint +having min(cbigint) > 10; + +select cint, rank() over(order by cint) from alltypesorc +where cint > 10 and cint < 10000 limit 10; + +select a.ctinyint, a.cint, count(a.cdouble) + over(partition by a.ctinyint order by a.cint desc + rows between 1 preceding and 1 following) +from alltypesorc a inner join alltypesorc b on a.cint = b.cbigint +order by a.ctinyint, a.cint; + +with v2 as + (select cdouble, count(cint) over() a, + sum(cint + cbigint) over(partition by cboolean1) b + from (select * from alltypesorc) v1) +select cdouble, a, b, a + b, cdouble + a from v2 +order by 1, 2, 3 limit 5; + +select a.cbigint, a.ctinyint, b.cint, b.ctinyint +from + (select ctinyint, cbigint from alltypesorc + union all + select ctinyint, cbigint from alltypesorc) a + inner join + alltypesorc b + on (a.ctinyint = b.ctinyint) +where b.ctinyint < 100 +order by 1, 2, 3, 4 limit 5; + +select x.ctinyint, x.cint, c.cbigint-100, c.cstring1 +from alltypesorc c +join ( + select a.ctinyint ctinyint, b.cint cint + from (select * from alltypesorc a where cboolean1=false) a + join alltypesorc b on (a.cint = b.cbigint - 224870380) + ) x on (x.cint = c.cint) +where x.ctinyint > 10 +and x.cint < 4.5 +and x.ctinyint + length(c.cstring2) < 1000; + +select c1, x2, x3 +from ( + select c1, min(c2) x2, sum(c3) x3 + from ( + select c1, c2, c3 + from ( + select cint c1, ctinyint c2, min(cbigint) c3 + from alltypesorc + where cint is not null + group by cint, ctinyint + order by cint, ctinyint + limit 5 + ) x + ) x2 + group by c1 +) y +where x2 > 0 +order by x2, c1 desc; + +select key, value from src1 +where key in (select key+18 from src1) order by key; + +select * from src1 a +where exists + (select cint from alltypesorc b + where a.key = b.ctinyint + 300) +and key > 300; + +select key, value from src1 +where key not in (select key+18 from src1) order by key; + +select * from src1 a +where not exists + (select cint from alltypesorc b + where a.key = b.ctinyint + 300) +and key > 300; + +with t as (select key x, value y from src1 where key > '2') +select x, y from t where y > 'v' order by x, y limit 5; + +from (select key x, value y from src1 where key > '2') t +select x, y where y > 'v' order by x, y limit 5; + +drop view if exists dest_v1; +create view dest_v1 as + select ctinyint, cint from alltypesorc where ctinyint is not null; + +select * from dest_v1 order by ctinyint, cint limit 2; + +alter view dest_v1 as select ctinyint from alltypesorc; + +select t.ctinyint from (select * from dest_v1 where ctinyint is not null) t +where ctinyint > 10 order by ctinyint limit 2; + +drop view if exists dest_v2; +create view dest_v2 (a, b) as select c1, x2 +from ( + select c1, min(c2) x2 + from ( + select c1, c2, c3 + from ( + select cint c1, ctinyint c2, min(cfloat) c3 + from alltypesorc + group by cint, ctinyint + order by cint, ctinyint + limit 1 + ) x + ) x2 + group by c1 +) y +order by x2,c1 desc; + +drop view if exists dest_v3; +create view dest_v3 (a1, a2, a3, a4, a5, a6, a7) as + select x.csmallint, x.cbigint bint1, x.ctinyint, c.cbigint bint2, x.cint, x.cfloat, c.cstring1 + from alltypesorc c + join ( + select a.csmallint csmallint, a.ctinyint ctinyint, a.cstring2 cstring2, + a.cint cint, a.cstring1 ctring1, b.cfloat cfloat, b.cbigint cbigint + from ( select * from alltypesorc a where cboolean1=true ) a + join alltypesorc b on (a.csmallint = b.cint) + ) x on (x.ctinyint = c.cbigint) + where x.csmallint=11 + and x.cint > 899 + and x.cfloat > 4.5 + and c.cstring1 < '7' + and x.cint + x.cfloat + length(c.cstring1) < 1000; + +alter view dest_v3 as + select * from ( + select sum(a.ctinyint) over (partition by a.csmallint order by a.csmallint) a, + count(b.cstring1) x, b.cboolean1 + from alltypesorc a join alltypesorc b on (a.cint = b.cint) + where a.cboolean2 = true and b.cfloat > 0 + group by a.ctinyint, a.csmallint, b.cboolean1 + having count(a.cint) > 10 + order by a, x, b.cboolean1 limit 10) t; + +select * from dest_v3 limit 2; + diff --git a/ql/src/test/results/clientpositive/alter_partition_change_col.q.out b/ql/src/test/results/clientpositive/alter_partition_change_col.q.out index 0d97b7ac4315..50520aa29352 100644 --- a/ql/src/test/results/clientpositive/alter_partition_change_col.q.out +++ b/ql/src/test/results/clientpositive/alter_partition_change_col.q.out @@ -41,10 +41,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@alter_partition_change_col0 POSTHOOK: Output: default@alter_partition_change_col1@p1=__HIVE_DEFAULT_PARTITION__/p2=123 POSTHOOK: Output: default@alter_partition_change_col1@p1=abc/p2=123 -POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), (alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), ] -POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c2 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), (alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), ] -POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), (alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), ] -POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=abc,p2=123).c2 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), (alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), ] +POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c2 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), ] +POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_partition_change_col1 PARTITION(p1=abc,p2=123).c2 EXPRESSION [(alter_partition_change_col0)alter_partition_change_col0.FieldSchema(name:c2, type:string, comment:null), ] PREHOOK: query: show partitions alter_partition_change_col1 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@alter_partition_change_col1 diff --git a/ql/src/test/results/clientpositive/alter_table_cascade.q.out b/ql/src/test/results/clientpositive/alter_table_cascade.q.out index 01394665b9d2..3bf1a432d21c 100644 --- a/ql/src/test/results/clientpositive/alter_table_cascade.q.out +++ b/ql/src/test/results/clientpositive/alter_table_cascade.q.out @@ -49,8 +49,8 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@alter_table_src POSTHOOK: Output: default@alter_table_cascade@p1=__HIVE_DEFAULT_PARTITION__/p2=123 POSTHOOK: Output: default@alter_table_cascade@p1=abc/p2=123 -POSTHOOK: Lineage: alter_table_cascade PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), (alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] -POSTHOOK: Lineage: alter_table_cascade PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), (alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_table_cascade PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_table_cascade PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] PREHOOK: query: show partitions alter_table_cascade PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@alter_table_cascade @@ -914,8 +914,8 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@alter_table_src POSTHOOK: Output: default@alter_table_restrict@p1=__HIVE_DEFAULT_PARTITION__/p2=123 POSTHOOK: Output: default@alter_table_restrict@p1=abc/p2=123 -POSTHOOK: Lineage: alter_table_restrict PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), (alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] -POSTHOOK: Lineage: alter_table_restrict PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), (alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_table_restrict PARTITION(p1=__HIVE_DEFAULT_PARTITION__,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] +POSTHOOK: Lineage: alter_table_restrict PARTITION(p1=abc,p2=123).c1 EXPRESSION [(alter_table_src)alter_table_src.FieldSchema(name:c1, type:string, comment:null), ] PREHOOK: query: show partitions alter_table_restrict PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@alter_table_restrict diff --git a/ql/src/test/results/clientpositive/combine2.q.out b/ql/src/test/results/clientpositive/combine2.q.out index 2400c9614674..9b1702fea813 100644 --- a/ql/src/test/results/clientpositive/combine2.q.out +++ b/ql/src/test/results/clientpositive/combine2.q.out @@ -65,14 +65,14 @@ POSTHOOK: Output: default@combine2@value=val_5 POSTHOOK: Output: default@combine2@value=val_8 POSTHOOK: Output: default@combine2@value=val_9 POSTHOOK: Output: default@combine2@value=| -POSTHOOK: Lineage: combine2 PARTITION(value=2010-04-21 09:45:00).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_0).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_2).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_4).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_5).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_8).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=val_9).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: combine2 PARTITION(value=|).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=2010-04-21 09:45:00).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_0).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_2).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_4).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_5).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_8).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=val_9).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: combine2 PARTITION(value=|).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] PREHOOK: query: show partitions combine2 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@combine2 diff --git a/ql/src/test/results/clientpositive/groupby_sort_1_23.q.out b/ql/src/test/results/clientpositive/groupby_sort_1_23.q.out index 34cd1ff9d66c..ffbfcd16da49 100644 --- a/ql/src/test/results/clientpositive/groupby_sort_1_23.q.out +++ b/ql/src/test/results/clientpositive/groupby_sort_1_23.q.out @@ -3002,8 +3002,8 @@ SELECT key, count(1) FROM T1 GROUP BY key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -3624,8 +3624,8 @@ SELECT key + key as key, count(1) as cnt FROM T1 GROUP BY key + key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -3946,7 +3946,7 @@ ON subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out b/ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out index 0d631ce09664..65fcb8e1c3d9 100644 --- a/ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out +++ b/ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out @@ -3262,8 +3262,8 @@ SELECT key, count(1) FROM T1 GROUP BY key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -3949,8 +3949,8 @@ SELECT key + key as key, count(1) as cnt FROM T1 GROUP BY key + key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -4271,7 +4271,7 @@ ON subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out b/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out index c3c1fc858a70..7755ed5835bd 100644 --- a/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out +++ b/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out @@ -190,6 +190,18 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-08/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] diff --git a/ql/src/test/results/clientpositive/index_auto_mult_tables_compact.q.out b/ql/src/test/results/clientpositive/index_auto_mult_tables_compact.q.out index e3dfcb77b349..1aa82ba6c6b0 100644 --- a/ql/src/test/results/clientpositive/index_auto_mult_tables_compact.q.out +++ b/ql/src/test/results/clientpositive/index_auto_mult_tables_compact.q.out @@ -189,6 +189,15 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-08/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] diff --git a/ql/src/test/results/clientpositive/index_auto_partitioned.q.out b/ql/src/test/results/clientpositive/index_auto_partitioned.q.out index f3ae876c39b8..a5724711d9c2 100644 --- a/ql/src/test/results/clientpositive/index_auto_partitioned.q.out +++ b/ql/src/test/results/clientpositive/index_auto_partitioned.q.out @@ -31,6 +31,15 @@ POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-08/hr=11 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] diff --git a/ql/src/test/results/clientpositive/index_auto_update.q.out b/ql/src/test/results/clientpositive/index_auto_update.q.out index 52509be467dc..70d02864fd65 100644 --- a/ql/src/test/results/clientpositive/index_auto_update.q.out +++ b/ql/src/test/results/clientpositive/index_auto_update.q.out @@ -197,6 +197,8 @@ POSTHOOK: Output: default@temp POSTHOOK: Lineage: default__temp_temp_index__._bucketname SIMPLE [(temp)temp.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__temp_temp_index__._offsets EXPRESSION [(temp)temp.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__temp_temp_index__.key SIMPLE [(temp)temp.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: temp.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: temp.val SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: -- query should return indexed values EXPLAIN SELECT * FROM temp WHERE key = 86 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/index_bitmap.q.out b/ql/src/test/results/clientpositive/index_bitmap.q.out index 596312dbe10a..3cc8d299b446 100644 --- a/ql/src/test/results/clientpositive/index_bitmap.q.out +++ b/ql/src/test/results/clientpositive/index_bitmap.q.out @@ -49,6 +49,18 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] @@ -177,6 +189,18 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] diff --git a/ql/src/test/results/clientpositive/index_bitmap_auto_partitioned.q.out b/ql/src/test/results/clientpositive/index_bitmap_auto_partitioned.q.out index 8d4774db0f95..65b6721cbf44 100644 --- a/ql/src/test/results/clientpositive/index_bitmap_auto_partitioned.q.out +++ b/ql/src/test/results/clientpositive/index_bitmap_auto_partitioned.q.out @@ -33,6 +33,18 @@ POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-08/hr=11 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_src_part_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart)srcpart.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_src_part_index__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] diff --git a/ql/src/test/results/clientpositive/index_bitmap_rc.q.out b/ql/src/test/results/clientpositive/index_bitmap_rc.q.out index 45fe3399ff06..4dfe626865f4 100644 --- a/ql/src/test/results/clientpositive/index_bitmap_rc.q.out +++ b/ql/src/test/results/clientpositive/index_bitmap_rc.q.out @@ -99,6 +99,18 @@ POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/h POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] @@ -227,6 +239,18 @@ POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/h POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bitmaps EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:ROW__OFFSET__INSIDE__BLOCK, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._offset SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] diff --git a/ql/src/test/results/clientpositive/index_compact.q.out b/ql/src/test/results/clientpositive/index_compact.q.out index a33f82a62da7..757da7f1f588 100644 --- a/ql/src/test/results/clientpositive/index_compact.q.out +++ b/ql/src/test/results/clientpositive/index_compact.q.out @@ -49,6 +49,15 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] @@ -168,6 +177,15 @@ POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_srcpart_index_proj__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart)srcpart.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart)srcpart.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_srcpart_index_proj__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] diff --git a/ql/src/test/results/clientpositive/index_compact_2.q.out b/ql/src/test/results/clientpositive/index_compact_2.q.out index fd4cdf960a72..3ffd7cec7b6e 100644 --- a/ql/src/test/results/clientpositive/index_compact_2.q.out +++ b/ql/src/test/results/clientpositive/index_compact_2.q.out @@ -87,6 +87,15 @@ POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/h POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] @@ -206,6 +215,15 @@ POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/h POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-08/hr=12 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=11 POSTHOOK: Output: default@default__srcpart_rc_srcpart_rc_index__@ds=2008-04-09/hr=12 +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] +POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=11).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._bucketname SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12)._offsets EXPRESSION [(srcpart_rc)srcpart_rc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), ] POSTHOOK: Lineage: default__srcpart_rc_srcpart_rc_index__ PARTITION(ds=2008-04-09,hr=12).key SIMPLE [(srcpart_rc)srcpart_rc.FieldSchema(name:key, type:int, comment:null), ] diff --git a/ql/src/test/results/clientpositive/join34.q.out b/ql/src/test/results/clientpositive/join34.q.out index 48c3b74e962d..ffdf5a542f8d 100644 --- a/ql/src/test/results/clientpositive/join34.q.out +++ b/ql/src/test/results/clientpositive/join34.q.out @@ -427,7 +427,7 @@ POSTHOOK: Input: default@src POSTHOOK: Input: default@src1 POSTHOOK: Output: default@dest_j1 POSTHOOK: Lineage: dest_j1.key SIMPLE [(src1)x.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.FieldSchema(name:value, type:string, comment:default), (src)x.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.FieldSchema(name:value, type:string, comment:default), ] POSTHOOK: Lineage: dest_j1.value SIMPLE [(src1)x.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from dest_j1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/join35.q.out b/ql/src/test/results/clientpositive/join35.q.out index c0372a70a88f..5b68295f2497 100644 --- a/ql/src/test/results/clientpositive/join35.q.out +++ b/ql/src/test/results/clientpositive/join35.q.out @@ -621,7 +621,7 @@ POSTHOOK: Input: default@src POSTHOOK: Input: default@src1 POSTHOOK: Output: default@dest_j1 POSTHOOK: Lineage: dest_j1.key SIMPLE [(src1)x.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.null, (src)x.null, ] +POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.null, ] POSTHOOK: Lineage: dest_j1.value SIMPLE [(src1)x.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from dest_j1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/lineage1.q.out b/ql/src/test/results/clientpositive/lineage1.q.out index d9f1ce3b1cde..a655c6cfccc0 100644 --- a/ql/src/test/results/clientpositive/lineage1.q.out +++ b/ql/src/test/results/clientpositive/lineage1.q.out @@ -257,5 +257,5 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Input: default@src1 POSTHOOK: Output: default@dest_l1 -POSTHOOK: Lineage: dest_l1.key EXPRESSION [(src1)t1.FieldSchema(name:key, type:string, comment:default), (src1)t1.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: dest_l1.value EXPRESSION [(src)p1.FieldSchema(name:value, type:string, comment:default), (src)p1.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: dest_l1.key EXPRESSION [(src1)t1.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: dest_l1.value EXPRESSION [(src)p1.FieldSchema(name:value, type:string, comment:default), ] diff --git a/ql/src/test/results/clientpositive/lineage2.q.out b/ql/src/test/results/clientpositive/lineage2.q.out new file mode 100644 index 000000000000..669be9709da6 --- /dev/null +++ b/ql/src/test/results/clientpositive/lineage2.q.out @@ -0,0 +1,2905 @@ +PREHOOK: query: drop table if exists src2 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table src2 as select key key2, value value2 from src1 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src1 +PREHOOK: Output: database:default +PREHOOK: Output: default@src2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "3a39d46286e4c2cd2139c9bb248f7b4f", + "queryText": "create table src2 as select key key2, value value2 from src1", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +PREHOOK: query: select * from src1 where key is not null and value is not null limit 3 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "b5b224847b2333e790a2c229434a04c8", + "queryText": "select * from src1 where key is not null and value is not null limit 3", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2, + 3 + ], + "targets": [ + 0, + 1 + ], + "expression": "(src1.key is not null and src1.value is not null)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "src1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "src1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +238 val_238 + +311 val_311 +PREHOOK: query: select * from src1 where key > 10 and value > 'val' order by key limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "773d9d0ea92e797eae292ae1eeea11ab", + "queryText": "select * from src1 where key > 10 and value > 'val' order by key limit 5", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2, + 3 + ], + "targets": [ + 0, + 1 + ], + "expression": "((UDFToDouble(src1.key) > UDFToDouble(10)) and (src1.value > 'val'))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "src1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "src1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +146 val_146 +150 val_150 +213 val_213 +238 val_238 +255 val_255 +PREHOOK: query: drop table if exists dest1 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest1 as select * from src1 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src1 +PREHOOK: Output: database:default +PREHOOK: Output: default@dest1 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "712fe958c357bcfc978b95c43eb19084", + "queryText": "create table dest1 as select * from src1", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +PREHOOK: query: insert into table dest1 select * from src2 +PREHOOK: type: QUERY +PREHOOK: Input: default@src2 +PREHOOK: Output: default@dest1 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "ecc718a966d8887b18084a55dd96f0bc", + "queryText": "insert into table dest1 select * from src2", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: select key k, dest1.value from dest1 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "416b6f4cd63edd4f9d8213d2d7819d21", + "queryText": "select key k, dest1.value from dest1", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "k" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "dest1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + } + ] +} +238 val_238 + +311 val_311 + val_27 + val_165 + val_409 +255 val_255 +278 val_278 +98 val_98 + val_484 + val_265 + val_193 +401 val_401 +150 val_150 +273 val_273 +224 +369 +66 val_66 +128 +213 val_213 +146 val_146 +406 val_406 + + + +238 val_238 + +311 val_311 + val_27 + val_165 + val_409 +255 val_255 +278 val_278 +98 val_98 + val_484 + val_265 + val_193 +401 val_401 +150 val_150 +273 val_273 +224 +369 +66 val_66 +128 +213 val_213 +146 val_146 +406 val_406 + + + +PREHOOK: query: select key from src1 union select key2 from src2 order by key +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "50fa3d1074b3fda37ce11dc6ec92ebf3", + "queryText": "select key from src1 union select key2 from src2 order by key", + "edges": [ + { + "sources": [ + 1, + 2 + ], + "targets": [ + 0 + ], + "expression": "key", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "u2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + } + ] +} + +128 +146 +150 +213 +224 +238 +255 +273 +278 +311 +369 +401 +406 +66 +98 +PREHOOK: query: select key k from src1 union select key2 from src2 order by k +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a739460bd79c8c91ec35e22c97329769", + "queryText": "select key k from src1 union select key2 from src2 order by k", + "edges": [ + { + "sources": [ + 1, + 2 + ], + "targets": [ + 0 + ], + "expression": "key", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "u2.k" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + } + ] +} + +128 +146 +150 +213 +224 +238 +255 +273 +278 +311 +369 +401 +406 +66 +98 +PREHOOK: query: select key, count(1) a from dest1 group by key +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "3901b5e3a164064736b3234355046340", + "queryText": "select key, count(1) a from dest1 group by key", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "count(1)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 3, + "vertexType": "TABLE", + "vertexId": "default.dest1" + } + ] +} + 20 +128 2 +146 2 +150 2 +213 2 +224 2 +238 2 +255 2 +273 2 +278 2 +311 2 +369 2 +401 2 +406 2 +66 2 +98 2 +PREHOOK: query: select key k, count(*) from dest1 group by key +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "0d5a212f10847aeaab31e8c31121e6d4", + "queryText": "select key k, count(*) from dest1 group by key", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "count(*)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "k" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 3, + "vertexType": "TABLE", + "vertexId": "default.dest1" + } + ] +} + 20 +128 2 +146 2 +150 2 +213 2 +224 2 +238 2 +255 2 +273 2 +278 2 +311 2 +369 2 +401 2 +406 2 +66 2 +98 2 +PREHOOK: query: select key k, count(value) from dest1 group by key +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "56429eccb04ded722f5bd9d9d8cf7260", + "queryText": "select key k, count(value) from dest1 group by key", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "count(default.dest1.value)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "k" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + } + ] +} + 20 +128 2 +146 2 +150 2 +213 2 +224 2 +238 2 +255 2 +273 2 +278 2 +311 2 +369 2 +401 2 +406 2 +66 2 +98 2 +PREHOOK: query: select value, max(length(key)) from dest1 group by value +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "7e1cfc3dece85b41b6f7c46365580cde", + "queryText": "select value, max(length(key)) from dest1 group by value", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "max(length(dest1.key))", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "value" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + } + ] +} + 3 +val_146 3 +val_150 3 +val_165 0 +val_193 0 +val_213 3 +val_238 3 +val_255 3 +val_265 0 +val_27 0 +val_273 3 +val_278 3 +val_311 3 +val_401 3 +val_406 3 +val_409 0 +val_484 0 +val_66 2 +val_98 2 +PREHOOK: query: select value, max(length(key)) from dest1 group by value order by value limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "c6578ce1dd72498c4af33f20f164e483", + "queryText": "select value, max(length(key)) from dest1 group by value order by value limit 5", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "max(length(dest1.key))", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "value" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + } + ] +} + 3 +val_146 3 +val_150 3 +val_165 0 +val_193 0 +PREHOOK: query: select key, length(value) from dest1 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "91fbcea5cb34362071555cd93e8d0abe", + "queryText": "select key, length(value) from dest1", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "length(dest1.value)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + } + ] +} +238 7 + 0 +311 7 + 6 + 7 + 7 +255 7 +278 7 +98 6 + 7 + 7 + 7 +401 7 +150 7 +273 7 +224 0 +369 0 +66 6 +128 0 +213 7 +146 7 +406 7 + 0 + 0 + 0 +238 7 + 0 +311 7 + 6 + 7 + 7 +255 7 +278 7 +98 6 + 7 + 7 + 7 +401 7 +150 7 +273 7 +224 0 +369 0 +66 6 +128 0 +213 7 +146 7 +406 7 + 0 + 0 + 0 +PREHOOK: query: select length(value) + 3 from dest1 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "3d8a347cc9052111cb328938d37b9b03", + "queryText": "select length(value) + 3 from dest1", + "edges": [ + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "expression": "(length(dest1.value) + 3)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest1.value" + } + ] +} +10 +3 +10 +9 +10 +10 +10 +10 +9 +10 +10 +10 +10 +10 +10 +3 +3 +9 +3 +10 +10 +10 +3 +3 +3 +10 +3 +10 +9 +10 +10 +10 +10 +9 +10 +10 +10 +10 +10 +10 +3 +3 +9 +3 +10 +10 +10 +3 +3 +3 +PREHOOK: query: select 5 from dest1 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "bae960bf4376ec00e37258469b17360d", + "queryText": "select 5 from dest1", + "edges": [ + { + "sources": [], + "targets": [ + 0 + ], + "expression": "5", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + } + ] +} +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +5 +PREHOOK: query: select 3 * 5 from dest1 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "753abad4d55afd3df34fdc73abfcd44d", + "queryText": "select 3 * 5 from dest1", + "edges": [ + { + "sources": [], + "targets": [ + 0 + ], + "expression": "(3 * 5)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + } + ] +} +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +15 +PREHOOK: query: drop table if exists dest2 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest2 as select * from src1 JOIN src2 ON src1.key = src2.key2 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: database:default +PREHOOK: Output: default@dest2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "386791c174a4999fc916e300b5e76bf2", + "queryText": "create table dest2 as select * from src1 JOIN src2 ON src1.key = src2.key2", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(src1.key = src2.key2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: insert overwrite table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: default@dest2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "e494b771d94800dc3430bf5d0810cd9f", + "queryText": "insert overwrite table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(src1.key = src2.key2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: insert into table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: default@dest2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "efeaddd0d36105b1013b414627850dc2", + "queryText": "insert into table dest2 select * from src1 JOIN src2 ON src1.key = src2.key2", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(src1.key = src2.key2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: insert into table dest2 + select * from src1 JOIN src2 ON length(src1.value) = length(src2.value2) + 1 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: default@dest2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "e9450a56b3d103642e06bef0e4f0d482", + "queryText": "insert into table dest2\n select * from src1 JOIN src2 ON length(src1.value) = length(src2.value2) + 1", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5, + 7 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(length(src1.value) = (length(src2.value2) + 1))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: select * from src1 where length(key) > 2 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "4028c94d222d5dd221f651d414386972", + "queryText": "select * from src1 where length(key) > 2", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(length(src1.key) > 2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "src1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "src1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +238 val_238 +311 val_311 +255 val_255 +278 val_278 +401 val_401 +150 val_150 +273 val_273 +224 +369 +128 +213 val_213 +146 val_146 +406 val_406 +PREHOOK: query: select * from src1 where length(key) > 2 and value > 'a' +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "5727531f7743cfcd60d634d8c835515f", + "queryText": "select * from src1 where length(key) > 2 and value > 'a'", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2, + 3 + ], + "targets": [ + 0, + 1 + ], + "expression": "((length(src1.key) > 2) and (src1.value > 'a'))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "src1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "src1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +238 val_238 +311 val_311 +255 val_255 +278 val_278 +401 val_401 +150 val_150 +273 val_273 +213 val_213 +146 val_146 +406 val_406 +PREHOOK: query: drop table if exists dest3 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest3 as + select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 1 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: database:default +PREHOOK: Output: default@dest3 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a2c4e9a3ec678039814f5d84b1e38ce4", + "queryText": "create table dest3 as\n select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 1", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(length(src1.key) > 1)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(src1.key = src2.key2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest3.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest3.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest3.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest3.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: insert overwrite table dest2 + select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 3 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +PREHOOK: Input: default@src2 +PREHOOK: Output: default@dest2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "76d84512204ddc576ad4d93f252e4358", + "queryText": "insert overwrite table dest2\n select * from src1 JOIN src2 ON src1.key = src2.key2 WHERE length(key) > 3", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(length(src1.key) > 3)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(src1.key = src2.key2)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest2.key2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest2.value2" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.src2.key2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.src2.value2" + } + ] +} +PREHOOK: query: drop table if exists dest_l1 +PREHOOK: type: DROPTABLE +PREHOOK: query: CREATE TABLE dest_l1(key INT, value STRING) STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_l1 +PREHOOK: query: INSERT OVERWRITE TABLE dest_l1 +SELECT j.* +FROM (SELECT t1.key, p1.value + FROM src1 t1 + LEFT OUTER JOIN src p1 + ON (t1.key = p1.key) + UNION ALL + SELECT t2.key, p2.value + FROM src1 t2 + LEFT OUTER JOIN src p2 + ON (t2.key = p2.key)) j +PREHOOK: type: QUERY +PREHOOK: Input: default@src +PREHOOK: Input: default@src1 +PREHOOK: Output: default@dest_l1 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "60b589744e2527dd235a6c8168d6a653", + "queryText": "INSERT OVERWRITE TABLE dest_l1\nSELECT j.*\nFROM (SELECT t1.key, p1.value\n FROM src1 t1\n LEFT OUTER JOIN src p1\n ON (t1.key = p1.key)\n UNION ALL\n SELECT t2.key, p2.value\n FROM src1 t2\n LEFT OUTER JOIN src p2\n ON (t2.key = p2.key)) j", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "expression": "UDFToInteger(j.key)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "j.value", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(p1.key = t1.key)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_l1.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_l1.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src.value" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src.key" + } + ] +} +PREHOOK: query: drop table if exists emp +PREHOOK: type: DROPTABLE +PREHOOK: query: drop table if exists dept +PREHOOK: type: DROPTABLE +PREHOOK: query: drop table if exists project +PREHOOK: type: DROPTABLE +PREHOOK: query: drop table if exists tgt +PREHOOK: type: DROPTABLE +PREHOOK: query: create table emp(emp_id int, name string, mgr_id int, dept_id int) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@emp +PREHOOK: query: create table dept(dept_id int, dept_name string) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@dept +PREHOOK: query: create table project(project_id int, project_name string) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@project +PREHOOK: query: create table tgt(dept_name string, name string, + emp_id int, mgr_id int, proj_id int, proj_name string) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@tgt +PREHOOK: query: INSERT INTO TABLE tgt +SELECT emd.dept_name, emd.name, emd.emp_id, emd.mgr_id, p.project_id, p.project_name +FROM ( + SELECT d.dept_name, em.name, em.emp_id, em.mgr_id, em.dept_id + FROM ( + SELECT e.name, e.dept_id, e.emp_id emp_id, m.emp_id mgr_id + FROM emp e JOIN emp m ON e.emp_id = m.emp_id + ) em + JOIN dept d ON d.dept_id = em.dept_id + ) emd JOIN project p ON emd.dept_id = p.project_id +PREHOOK: type: QUERY +PREHOOK: Input: default@dept +PREHOOK: Input: default@emp +PREHOOK: Input: default@project +PREHOOK: Output: default@tgt +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "f59797e0422d2e51515063374dfac361", + "queryText": "INSERT INTO TABLE tgt\nSELECT emd.dept_name, emd.name, emd.emp_id, emd.mgr_id, p.project_id, p.project_name\nFROM (\n SELECT d.dept_name, em.name, em.emp_id, em.mgr_id, em.dept_id\n FROM (\n SELECT e.name, e.dept_id, e.emp_id emp_id, m.emp_id mgr_id\n FROM emp e JOIN emp m ON e.emp_id = m.emp_id\n ) em\n JOIN dept d ON d.dept_id = em.dept_id\n ) emd JOIN project p ON emd.dept_id = p.project_id", + "edges": [ + { + "sources": [ + 6 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 1 + ], + "expression": "emd.name", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8 + ], + "targets": [ + 2 + ], + "expression": "emd.emp_id", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8 + ], + "targets": [ + 3 + ], + "expression": "emd.mgr_id", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 9 + ], + "targets": [ + 4 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 10 + ], + "targets": [ + 5 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8 + ], + "targets": [ + 0, + 1, + 2, + 3, + 4, + 5 + ], + "expression": "(e.emp_id = m.emp_id)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 11, + 12 + ], + "targets": [ + 0, + 1, + 2, + 3, + 4, + 5 + ], + "expression": "(em._col1 = d.dept_id)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 11, + 9 + ], + "targets": [ + 0, + 1, + 2, + 3, + 4, + 5 + ], + "expression": "(emd._col4 = p.project_id)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.tgt.dept_name" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.tgt.name" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.tgt.emp_id" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.tgt.mgr_id" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.tgt.proj_id" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.tgt.proj_name" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.dept.dept_name" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.emp.name" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.emp.emp_id" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.project.project_id" + }, + { + "id": 10, + "vertexType": "COLUMN", + "vertexId": "default.project.project_name" + }, + { + "id": 11, + "vertexType": "COLUMN", + "vertexId": "default.emp.dept_id" + }, + { + "id": 12, + "vertexType": "COLUMN", + "vertexId": "default.dept.dept_id" + } + ] +} +PREHOOK: query: drop table if exists dest_l2 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest_l2 (id int, c1 tinyint, c2 int, c3 bigint) stored as textfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_l2 +PREHOOK: query: insert into dest_l2 values(0, 1, 100, 10000) +PREHOOK: type: QUERY +PREHOOK: Input: default@values__tmp__table__1 +PREHOOK: Output: default@dest_l2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "e001334e3f8384806b0f25a7c303045f", + "queryText": "insert into dest_l2 values(0, 1, 100, 10000)", + "edges": [ + { + "sources": [], + "targets": [ + 0 + ], + "expression": "UDFToInteger(values__tmp__table__1.tmp_values_col1)", + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 1 + ], + "expression": "UDFToByte(values__tmp__table__1.tmp_values_col2)", + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 2 + ], + "expression": "UDFToInteger(values__tmp__table__1.tmp_values_col3)", + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 3 + ], + "expression": "UDFToLong(values__tmp__table__1.tmp_values_col4)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.id" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c3" + } + ] +} +PREHOOK: query: select * from ( + select c1 + c2 x from dest_l2 + union all + select sum(c3) y from (select c3 from dest_l2) v1) v2 order by x +PREHOOK: type: QUERY +PREHOOK: Input: default@dest_l2 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a2c96a96be9d315ede966be5b45ef20e", + "queryText": "select * from (\n select c1 + c2 x from dest_l2\n union all\n select sum(c3) y from (select c3 from dest_l2) v1) v2 order by x", + "edges": [ + { + "sources": [ + 1, + 2, + 3 + ], + "targets": [ + 0 + ], + "expression": "v2.x", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "v2.x" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c3" + } + ] +} +101 +10000 +PREHOOK: query: drop table if exists dest_l3 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest_l3 (id int, c1 string, c2 string, c3 int) stored as textfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_l3 +PREHOOK: query: insert into dest_l3 values(0, "s1", "s2", 15) +PREHOOK: type: QUERY +PREHOOK: Input: default@values__tmp__table__2 +PREHOOK: Output: default@dest_l3 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "09df51ba6ba2d07f2304523ee505f094", + "queryText": "insert into dest_l3 values(0, \"s1\", \"s2\", 15)", + "edges": [ + { + "sources": [], + "targets": [ + 0 + ], + "expression": "UDFToInteger(values__tmp__table__2.tmp_values_col1)", + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 1, + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 3 + ], + "expression": "UDFToInteger(values__tmp__table__2.tmp_values_col4)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.id" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c3" + } + ] +} +PREHOOK: query: select sum(a.c1) over (partition by a.c1 order by a.id) +from dest_l2 a +where a.c2 != 10 +group by a.c1, a.c2, a.id +having count(a.c2) > 0 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest_l2 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "0ae7aa4a0cbd1283210fa79e8a19104a", + "queryText": "select sum(a.c1) over (partition by a.c1 order by a.id)\nfrom dest_l2 a\nwhere a.c2 != 10\ngroup by a.c1, a.c2, a.id\nhaving count(a.c2) > 0", + "edges": [ + { + "sources": [ + 1, + 2, + 3 + ], + "targets": [ + 0 + ], + "expression": "(tok_function sum (. (tok_table_or_col $hdt$_0) $f0) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col $hdt$_0) $f0)) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col $hdt$_0) $f2)))) (tok_windowvalues (preceding 2147483647) current)))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "expression": "(a.c2 <> 10)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "expression": "(count(default.dest_l2.c2) > 0)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.id" + } + ] +} +1 +PREHOOK: query: select sum(a.c1), count(b.c1), b.c2, b.c3 +from dest_l2 a join dest_l3 b on (a.id = b.id) +where a.c2 != 10 and b.c3 > 0 +group by a.c1, a.c2, a.id, b.c1, b.c2, b.c3 +having count(a.c2) > 0 +order by b.c3 limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@dest_l2 +PREHOOK: Input: default@dest_l3 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "01879c619517509d9f5b6ead998bb4bb", + "queryText": "select sum(a.c1), count(b.c1), b.c2, b.c3\nfrom dest_l2 a join dest_l3 b on (a.id = b.id)\nwhere a.c2 != 10 and b.c3 > 0\ngroup by a.c1, a.c2, a.id, b.c1, b.c2, b.c3\nhaving count(a.c2) > 0\norder by b.c3 limit 5", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "expression": "sum(default.dest_l2.c1)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "expression": "count(default.dest_l3.c1)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8, + 7 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "((a.c2 <> 10) and (b.c3 > 0))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 8 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(count(default.dest_l2.c2) > 0)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 9, + 10 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(a.id = b.id)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "_c0" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "_c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "b.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "b.c3" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c1" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c1" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c2" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c3" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c2" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.id" + }, + { + "id": 10, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.id" + } + ] +} +1 1 s2 15 +PREHOOK: query: drop table if exists t +PREHOOK: type: DROPTABLE +PREHOOK: query: create table t as +select distinct a.c2, a.c3 from dest_l2 a +inner join dest_l3 b on (a.id = b.id) +where a.id > 0 and b.c3 = 15 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@dest_l2 +PREHOOK: Input: default@dest_l3 +PREHOOK: Output: database:default +PREHOOK: Output: default@t +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "0d2f15b494111ffe236d5be42a76fa28", + "queryText": "create table t as\nselect distinct a.c2, a.c3 from dest_l2 a\ninner join dest_l3 b on (a.id = b.id)\nwhere a.id > 0 and b.c3 = 15", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 5 + ], + "targets": [ + 0, + 1 + ], + "expression": "((a.id > 0) and (b.c3 = 15))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1 + ], + "expression": "(a.id = b.id)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.t.c2" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.t.c3" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.c3" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.dest_l2.id" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.c3" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.dest_l3.id" + } + ] +} +PREHOOK: query: SELECT substr(src1.key,1,1), count(DISTINCT substr(src1.value,5)), +concat(substr(src1.key,1,1),sum(substr(src1.value,5))) +from src1 +GROUP BY substr(src1.key,1,1) +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "5b1022708124ee2b80f9e2e8a0dcb15c", + "queryText": "SELECT substr(src1.key,1,1), count(DISTINCT substr(src1.value,5)),\nconcat(substr(src1.key,1,1),sum(substr(src1.value,5)))\nfrom src1\nGROUP BY substr(src1.key,1,1)", + "edges": [ + { + "sources": [ + 3 + ], + "targets": [ + 0 + ], + "expression": "substr(src1.key, 1, 1)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4 + ], + "targets": [ + 1 + ], + "expression": "count(DISTINCT substr(src1.value, 5))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3, + 4 + ], + "targets": [ + 2 + ], + "expression": "concat(substr(src1.key, 1, 1), sum(substr(src1.value, 5)))", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} + 7 1543.0 +1 3 1296.0 +2 6 21257.0 +3 2 3311.0 +4 2 4807.0 +6 1 666.0 +9 1 998.0 diff --git a/ql/src/test/results/clientpositive/lineage3.q.out b/ql/src/test/results/clientpositive/lineage3.q.out new file mode 100644 index 000000000000..5c392fac7c54 --- /dev/null +++ b/ql/src/test/results/clientpositive/lineage3.q.out @@ -0,0 +1,2473 @@ +PREHOOK: query: drop table if exists t +PREHOOK: type: DROPTABLE +PREHOOK: query: create table t as +select * from + (select * from + (select key from src1 limit 1) v1) v2 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src1 +PREHOOK: Output: database:default +PREHOOK: Output: default@t +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "761b3a1f405d8e719d3f0c9147b57a23", + "queryText": "create table t as\nselect * from\n (select * from\n (select key from src1 limit 1) v1) v2", + "edges": [ + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.t.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + } + ] +} +PREHOOK: query: drop table if exists dest_l1 +PREHOOK: type: DROPTABLE +PREHOOK: query: create table dest_l1(a int, b varchar(128)) + partitioned by (ds string) clustered by (a) into 2 buckets +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_l1 +PREHOOK: query: insert into table dest_l1 partition (ds='today') +select cint, cast(cstring1 as varchar(128)) as cs +from alltypesorc +where cint is not null and cint < 0 order by cint, cs limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: default@dest_l1@ds=today +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "2b5891d094ff74e23ec6acf5b4990f45", + "queryText": "insert into table dest_l1 partition (ds='today')\nselect cint, cast(cstring1 as varchar(128)) as cs\nfrom alltypesorc\nwhere cint is not null and cint < 0 order by cint, cs limit 5", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "CAST( alltypesorc.cstring1 AS varchar(128))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(alltypesorc.cint is not null and (alltypesorc.cint < 0))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "cint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "cs" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + } + ] +} +PREHOOK: query: insert into table dest_l1 partition (ds='tomorrow') +select min(cint), cast(min(cstring1) as varchar(128)) as cs +from alltypesorc +where cint is not null and cboolean1 = true +group by csmallint +having min(cbigint) > 10 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: default@dest_l1@ds=tomorrow +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "4ad6338a8abfe3fe0342198fcbd1f11d", + "queryText": "insert into table dest_l1 partition (ds='tomorrow')\nselect min(cint), cast(min(cstring1) as varchar(128)) as cs\nfrom alltypesorc\nwhere cint is not null and cboolean1 = true\ngroup by csmallint\nhaving min(cbigint) > 10", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "expression": "min(default.alltypesorc.cint)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "CAST( min(default.alltypesorc.cstring1) AS varchar(128))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2, + 4 + ], + "targets": [ + 0, + 1 + ], + "expression": "(alltypesorc.cint is not null and (alltypesorc.cboolean1 = true))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1 + ], + "expression": "(min(default.alltypesorc.cbigint) > 10)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c0" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "cs" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + } + ] +} +PREHOOK: query: select cint, rank() over(order by cint) from alltypesorc +where cint > 10 and cint < 10000 limit 10 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "351b08ec58591554ec10a6ded68ef25f", + "queryText": "select cint, rank() over(order by cint) from alltypesorc\nwhere cint > 10 and cint < 10000 limit 10", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3, + 4, + 2, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ], + "targets": [ + 1 + ], + "expression": "(tok_function rank (tok_windowspec (tok_partitioningspec (tok_distributeby 0) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col alltypesorc) cint)))) (tok_windowrange (preceding 2147483647) (following 2147483647))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "((alltypesorc.cint > 10) and (alltypesorc.cint < 10000))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "cint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.csmallint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cfloat" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cdouble" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring2" + }, + { + "id": 10, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctimestamp1" + }, + { + "id": 11, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctimestamp2" + }, + { + "id": 12, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + }, + { + "id": 13, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean2" + } + ] +} +762 1 +762 1 +762 1 +762 1 +762 1 +6981 6 +6981 6 +6981 6 +6981 6 +6981 6 +PREHOOK: query: select a.ctinyint, a.cint, count(a.cdouble) + over(partition by a.ctinyint order by a.cint desc + rows between 1 preceding and 1 following) +from alltypesorc a inner join alltypesorc b on a.cint = b.cbigint +order by a.ctinyint, a.cint +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "40c3faa7abd1cdb7f12c1047a8a1d2ce", + "queryText": "select a.ctinyint, a.cint, count(a.cdouble)\n over(partition by a.ctinyint order by a.cint desc\n rows between 1 preceding and 1 following)\nfrom alltypesorc a inner join alltypesorc b on a.cint = b.cbigint\norder by a.ctinyint, a.cint", + "edges": [ + { + "sources": [ + 3 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3, + 4, + 5, + 6 + ], + "targets": [ + 2 + ], + "expression": "(tok_function count (. (tok_table_or_col $hdt$_0) cdouble) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col $hdt$_0) ctinyint)) (tok_orderby (tok_tabsortcolnamedesc (. (tok_table_or_col $hdt$_0) cint)))) (tok_windowrange (preceding 1) (following 1))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4, + 6 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(UDFToLong(a.cint) = a.cbigint)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "a.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a.cint" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cdouble" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + } + ] +} +PREHOOK: query: with v2 as + (select cdouble, count(cint) over() a, + sum(cint + cbigint) over(partition by cboolean1) b + from (select * from alltypesorc) v1) +select cdouble, a, b, a + b, cdouble + a from v2 +order by 1, 2, 3 limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a1487a49aee6bd1e81b75185b21cfb54", + "queryText": "with v2 as\n (select cdouble, count(cint) over() a,\n sum(cint + cbigint) over(partition by cboolean1) b\n from (select * from alltypesorc) v1)\nselect cdouble, a, b, a + b, cdouble + a from v2\norder by 1, 2, 3 limit 5", + "edges": [ + { + "sources": [ + 5 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6, + 7, + 8, + 9, + 10, + 5, + 11, + 12, + 13, + 14, + 15, + 16 + ], + "targets": [ + 1 + ], + "expression": "(tok_function count (. (tok_table_or_col alltypesorc) cint) (tok_windowspec (tok_partitioningspec (tok_distributeby 0) (tok_orderby (tok_tabsortcolnameasc 0))) (tok_windowrange (preceding 2147483647) (following 2147483647))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6, + 7, + 8, + 9, + 10, + 5, + 11, + 12, + 13, + 14, + 15, + 16 + ], + "targets": [ + 2 + ], + "expression": "(tok_function sum (+ (tok_function tok_bigint (. (tok_table_or_col alltypesorc) cint)) (. (tok_table_or_col alltypesorc) cbigint)) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col alltypesorc) cboolean1)) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col alltypesorc) cboolean1)))) (tok_windowrange (preceding 2147483647) (following 2147483647))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6, + 7, + 8, + 9, + 10, + 5, + 11, + 12, + 13, + 14, + 15, + 16 + ], + "targets": [ + 3 + ], + "expression": "((tok_function count (. (tok_table_or_col alltypesorc) cint) (tok_windowspec (tok_partitioningspec (tok_distributeby 0) (tok_orderby (tok_tabsortcolnameasc 0))) (tok_windowrange (preceding 2147483647) (following 2147483647)))) + (tok_function sum (+ (tok_function tok_bigint (. (tok_table_or_col alltypesorc) cint)) (. (tok_table_or_col alltypesorc) cbigint)) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col alltypesorc) cboolean1)) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col alltypesorc) cboolean1)))) (tok_windowrange (preceding 2147483647) (following 2147483647)))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ], + "targets": [ + 4 + ], + "expression": "(alltypesorc._col6 + UDFToDouble((tok_function count (. (tok_table_or_col alltypesorc) cint) (tok_windowspec (tok_partitioningspec (tok_distributeby 0) (tok_orderby (tok_tabsortcolnameasc 0))) (tok_windowrange (preceding 2147483647) (following 2147483647))))))", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "cdouble" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "b" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "c3" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "c4" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cdouble" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.csmallint" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + }, + { + "id": 10, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cfloat" + }, + { + "id": 11, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 12, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring2" + }, + { + "id": 13, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctimestamp1" + }, + { + "id": 14, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctimestamp2" + }, + { + "id": 15, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + }, + { + "id": 16, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean2" + } + ] +} +12205.0 9173 -919551973060 -919551963887 21378.0 +6723.0 9173 -919551973060 -919551963887 15896.0 +13776.0 9173 -919551973060 -919551963887 22949.0 +-13657.0 9173 -919551973060 -919551963887 -4484.0 +-329.0 9173 -919551973060 -919551963887 8844.0 +PREHOOK: query: select a.cbigint, a.ctinyint, b.cint, b.ctinyint +from + (select ctinyint, cbigint from alltypesorc + union all + select ctinyint, cbigint from alltypesorc) a + inner join + alltypesorc b + on (a.ctinyint = b.ctinyint) +where b.ctinyint < 100 +order by 1, 2, 3, 4 limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "890b55d7a07682c67354eb0cabb1045e", + "queryText": "select a.cbigint, a.ctinyint, b.cint, b.ctinyint\nfrom\n (select ctinyint, cbigint from alltypesorc\n union all\n select ctinyint, cbigint from alltypesorc) a\n inner join\n alltypesorc b\n on (a.ctinyint = b.ctinyint)\nwhere b.ctinyint < 100\norder by 1, 2, 3, 4 limit 5", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "expression": "a.ctinyint", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "expression": "a.cbigint", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(alltypesorc.ctinyint < 100)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(ctinyint < 100)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(a.cbigint = alltypesorc.ctinyint)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "a.cbigint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a.ctinyint" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "b.cint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "b.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + } + ] +} +-47746898 -51 440161865 -51 +-47746898 -51 NULL -51 +-47746898 -51 -637509859 -51 +-47746898 -51 -269885388 -51 +-47746898 -51 -823391707 -51 +PREHOOK: query: select x.ctinyint, x.cint, c.cbigint-100, c.cstring1 +from alltypesorc c +join ( + select a.ctinyint ctinyint, b.cint cint + from (select * from alltypesorc a where cboolean1=false) a + join alltypesorc b on (a.cint = b.cbigint - 224870380) + ) x on (x.cint = c.cint) +where x.ctinyint > 10 +and x.cint < 4.5 +and x.ctinyint + length(c.cstring2) < 1000 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "3a12ad24b2622a8958df12d0bdc60f8a", + "queryText": "select x.ctinyint, x.cint, c.cbigint-100, c.cstring1\nfrom alltypesorc c\njoin (\n select a.ctinyint ctinyint, b.cint cint\n from (select * from alltypesorc a where cboolean1=false) a\n join alltypesorc b on (a.cint = b.cbigint - 224870380)\n ) x on (x.cint = c.cint)\nwhere x.ctinyint > 10\nand x.cint < 4.5\nand x.ctinyint + length(c.cstring2) < 1000", + "edges": [ + { + "sources": [ + 4 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 1 + ], + "expression": "cint", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 2 + ], + "expression": "(c.cbigint - UDFToLong(100))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 7 + ], + "targets": [ + 3 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(UDFToDouble(c.cint) < 4.5)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 8 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "((UDFToInteger(ctinyint) + length(c.cstring2)) < 1000)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(c.cint = c.cint)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 9 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(c.cboolean1 = false)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "(c.ctinyint > 10)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 6, + 5 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "((c.cbigint - UDFToLong(224870380)) = UDFToLong(c.cint))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4, + 8 + ], + "targets": [ + 0, + 1, + 2, + 3 + ], + "expression": "((UDFToInteger(c.ctinyint) + length(c.cstring2)) < 1000)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "x.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "x.cint" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "c2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "c.cstring1" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring2" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + } + ] +} +11 -654374827 857266369 OEfPnHnIYueoup +PREHOOK: query: select c1, x2, x3 +from ( + select c1, min(c2) x2, sum(c3) x3 + from ( + select c1, c2, c3 + from ( + select cint c1, ctinyint c2, min(cbigint) c3 + from alltypesorc + where cint is not null + group by cint, ctinyint + order by cint, ctinyint + limit 5 + ) x + ) x2 + group by c1 +) y +where x2 > 0 +order by x2, c1 desc +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "bc64f8bec21631969a17930ec609cde9", + "queryText": "select c1, x2, x3\nfrom (\n select c1, min(c2) x2, sum(c3) x3\n from (\n select c1, c2, c3\n from (\n select cint c1, ctinyint c2, min(cbigint) c3\n from alltypesorc\n where cint is not null\n group by cint, ctinyint\n order by cint, ctinyint\n limit 5\n ) x\n ) x2\n group by c1\n) y\nwhere x2 > 0\norder by x2, c1 desc", + "edges": [ + { + "sources": [ + 3 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 4 + ], + "targets": [ + 1 + ], + "expression": "min(default.alltypesorc.ctinyint)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 2 + ], + "expression": "sum(min(default.alltypesorc.cbigint))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "alltypesorc.cint is not null", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(min(default.alltypesorc.ctinyint) > 0)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "c1" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "x2" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "x3" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + } + ] +} +-1072910839 11 2048385991 +-1073279343 11 -1595604468 +PREHOOK: query: select key, value from src1 +where key in (select key+18 from src1) order by key +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "8b9d63653e36ecf4dd425d3cc3de9199", + "queryText": "select key, value from src1\nwhere key in (select key+18 from src1) order by key", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "(1 = 1)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(src1.key) = (UDFToDouble(src1.key) + UDFToDouble(18)))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +146 val_146 +273 val_273 +PREHOOK: query: select * from src1 a +where exists + (select cint from alltypesorc b + where a.key = b.ctinyint + 300) +and key > 300 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "8bf193b0658183be94e2428a79d91d10", + "queryText": "select * from src1 a\nwhere exists\n (select cint from alltypesorc b\n where a.key = b.ctinyint + 300)\nand key > 300", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(a.key) > UDFToDouble(300))", + "edgeType": "PREDICATE" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "(1 = 1)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2, + 4 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(a.key) = UDFToDouble((UDFToInteger(b.ctinyint) + 300)))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "a.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + } + ] +} +311 val_311 +Warning: Shuffle Join JOIN[18][tables = [$hdt$_0, $hdt$_1]] in Stage 'Stage-1:MAPRED' is a cross product +PREHOOK: query: select key, value from src1 +where key not in (select key+18 from src1) order by key +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "9b488fe1d7cf018aad3825173808cd36", + "queryText": "select key, value from src1\nwhere key not in (select key+18 from src1) order by key", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "expression": "key", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "value", + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "(1 = 1)", + "edgeType": "PREDICATE" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "_o__c0 is null", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(src1.key) + UDFToDouble(18)) is null", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1 + ], + "expression": "(count(*) = 0)", + "edgeType": "PREDICATE" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "true", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(key) = (UDFToDouble(src1.key) + UDFToDouble(18)))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 4, + "vertexType": "TABLE", + "vertexId": "default.src1" + } + ] +} +PREHOOK: query: select * from src1 a +where not exists + (select cint from alltypesorc b + where a.key = b.ctinyint + 300) +and key > 300 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "53191056e05af9080a30de853e8cea9c", + "queryText": "select * from src1 a\nwhere not exists\n (select cint from alltypesorc b\n where a.key = b.ctinyint + 300)\nand key > 300", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [], + "targets": [ + 0, + 1 + ], + "expression": "(1 = 1)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToInteger(b.ctinyint) + 300) is null", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble(a.key) > UDFToDouble(300))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 4, + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(UDFToDouble((UDFToInteger(b.ctinyint) + 300)) = UDFToDouble(a.key))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "a.key" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "a.value" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + } + ] +} +369 +401 val_401 +406 val_406 +PREHOOK: query: with t as (select key x, value y from src1 where key > '2') +select x, y from t where y > 'v' order by x, y limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "d40d80b93db06c12df9a6ccdc108a9d1", + "queryText": "with t as (select key x, value y from src1 where key > '2')\nselect x, y from t where y > 'v' order by x, y limit 5", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(src1.key > '2')", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 3 + ], + "targets": [ + 0, + 1 + ], + "expression": "(src1.value > 'v')", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "x" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "y" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +213 val_213 +238 val_238 +255 val_255 +273 val_273 +278 val_278 +PREHOOK: query: from (select key x, value y from src1 where key > '2') t +select x, y where y > 'v' order by x, y limit 5 +PREHOOK: type: QUERY +PREHOOK: Input: default@src1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "9180b71a610dbcf5e636a3c03e48ca3b", + "queryText": "from (select key x, value y from src1 where key > '2') t\nselect x, y where y > 'v' order by x, y limit 5", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "(src1.key > '2')", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 3 + ], + "targets": [ + 0, + 1 + ], + "expression": "(src1.value > 'v')", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "x" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "y" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.src1.key" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.src1.value" + } + ] +} +213 val_213 +238 val_238 +255 val_255 +273 val_273 +278 val_278 +PREHOOK: query: drop view if exists dest_v1 +PREHOOK: type: DROPVIEW +PREHOOK: query: create view dest_v1 as + select ctinyint, cint from alltypesorc where ctinyint is not null +PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_v1 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a3b2d2665c90fd669400f247f751f081", + "queryText": "create view dest_v1 as\n select ctinyint, cint from alltypesorc where ctinyint is not null", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "alltypesorc.ctinyint is not null", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_v1.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_v1.cint" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + } + ] +} +PREHOOK: query: select * from dest_v1 order by ctinyint, cint limit 2 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Input: default@dest_v1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "75e07b246069a5541af4a3983500b439", + "queryText": "select * from dest_v1 order by ctinyint, cint limit 2", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 2 + ], + "targets": [ + 0, + 1 + ], + "expression": "alltypesorc.ctinyint is not null", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "dest_v1.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "dest_v1.cint" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + } + ] +} +-64 NULL +-64 NULL +PREHOOK: query: alter view dest_v1 as select ctinyint from alltypesorc +PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_v1 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "bcab8b0c498b0d94e0967170956392b6", + "queryText": "alter view dest_v1 as select ctinyint from alltypesorc", + "edges": [ + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_v1.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + } + ] +} +PREHOOK: query: select t.ctinyint from (select * from dest_v1 where ctinyint is not null) t +where ctinyint > 10 order by ctinyint limit 2 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Input: default@dest_v1 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "b0192d4da86f4bef38fe7ab1fc607906", + "queryText": "select t.ctinyint from (select * from dest_v1 where ctinyint is not null) t\nwhere ctinyint > 10 order by ctinyint limit 2", + "edges": [ + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "expression": "alltypesorc.ctinyint is not null", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 1 + ], + "targets": [ + 0 + ], + "expression": "(alltypesorc.ctinyint > 10)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "t.ctinyint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + } + ] +} +11 +11 +PREHOOK: query: drop view if exists dest_v2 +PREHOOK: type: DROPVIEW +PREHOOK: query: create view dest_v2 (a, b) as select c1, x2 +from ( + select c1, min(c2) x2 + from ( + select c1, c2, c3 + from ( + select cint c1, ctinyint c2, min(cfloat) c3 + from alltypesorc + group by cint, ctinyint + order by cint, ctinyint + limit 1 + ) x + ) x2 + group by c1 +) y +order by x2,c1 desc +PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_v2 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "eda442b42b9c3a9cbdb7aff1984ad2dd", + "queryText": "create view dest_v2 (a, b) as select c1, x2\nfrom (\n select c1, min(c2) x2\n from (\n select c1, c2, c3\n from (\n select cint c1, ctinyint c2, min(cfloat) c3\n from alltypesorc\n group by cint, ctinyint\n order by cint, ctinyint\n limit 1\n ) x\n ) x2\n group by c1\n) y\norder by x2,c1 desc", + "edges": [ + { + "sources": [ + 2 + ], + "targets": [ + 0 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 3 + ], + "targets": [ + 1 + ], + "expression": "min(default.alltypesorc.ctinyint)", + "edgeType": "PROJECTION" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_v2.c1" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_v2.x2" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + } + ] +} +PREHOOK: query: drop view if exists dest_v3 +PREHOOK: type: DROPVIEW +PREHOOK: query: create view dest_v3 (a1, a2, a3, a4, a5, a6, a7) as + select x.csmallint, x.cbigint bint1, x.ctinyint, c.cbigint bint2, x.cint, x.cfloat, c.cstring1 + from alltypesorc c + join ( + select a.csmallint csmallint, a.ctinyint ctinyint, a.cstring2 cstring2, + a.cint cint, a.cstring1 ctring1, b.cfloat cfloat, b.cbigint cbigint + from ( select * from alltypesorc a where cboolean1=true ) a + join alltypesorc b on (a.csmallint = b.cint) + ) x on (x.ctinyint = c.cbigint) + where x.csmallint=11 + and x.cint > 899 + and x.cfloat > 4.5 + and c.cstring1 < '7' + and x.cint + x.cfloat + length(c.cstring1) < 1000 +PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_v3 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "a0c2481ce1c24895a43a950f93a10da7", + "queryText": "create view dest_v3 (a1, a2, a3, a4, a5, a6, a7) as\n select x.csmallint, x.cbigint bint1, x.ctinyint, c.cbigint bint2, x.cint, x.cfloat, c.cstring1\n from alltypesorc c\n join (\n select a.csmallint csmallint, a.ctinyint ctinyint, a.cstring2 cstring2,\n a.cint cint, a.cstring1 ctring1, b.cfloat cfloat, b.cbigint cbigint\n from ( select * from alltypesorc a where cboolean1=true ) a\n join alltypesorc b on (a.csmallint = b.cint)\n ) x on (x.ctinyint = c.cbigint)\n where x.csmallint=11\n and x.cint > 899\n and x.cfloat > 4.5\n and c.cstring1 < '7'\n and x.cint + x.cfloat + length(c.cstring1) < 1000", + "edges": [ + { + "sources": [ + 7 + ], + "targets": [ + 0 + ], + "expression": "x._col15", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8 + ], + "targets": [ + 1, + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 9 + ], + "targets": [ + 3 + ], + "expression": "x._col16", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 10 + ], + "targets": [ + 4 + ], + "expression": "x._col18", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 11 + ], + "targets": [ + 5 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 12 + ], + "targets": [ + 6 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 13 + ], + "targets": [ + 0, + 1, + 3, + 2, + 4, + 5, + 6 + ], + "expression": "(a.cboolean1 = true)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7, + 10, + 12, + 11 + ], + "targets": [ + 0, + 1, + 3, + 2, + 4, + 5, + 6 + ], + "expression": "(((((x.csmallint = 11) and (x.cint > 899)) and (x.cfloat > 4.5)) and (c.cstring1 < '7')) and (((x.cint + x.cfloat) + length(c.cstring1)) < 1000))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7, + 10 + ], + "targets": [ + 0, + 1, + 3, + 2, + 4, + 5, + 6 + ], + "expression": "(UDFToInteger(a._col1) = b.cint)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 8, + 9 + ], + "targets": [ + 0, + 1, + 3, + 2, + 4, + 5, + 6 + ], + "expression": "(c.cbigint = UDFToLong(x._col1))", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.csmallint" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.bint1" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.bint2" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.cint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.cfloat" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.cstring1" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.csmallint" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cbigint" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 10, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 11, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cfloat" + }, + { + "id": 12, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 13, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + } + ] +} +PREHOOK: query: alter view dest_v3 as + select * from ( + select sum(a.ctinyint) over (partition by a.csmallint order by a.csmallint) a, + count(b.cstring1) x, b.cboolean1 + from alltypesorc a join alltypesorc b on (a.cint = b.cint) + where a.cboolean2 = true and b.cfloat > 0 + group by a.ctinyint, a.csmallint, b.cboolean1 + having count(a.cint) > 10 + order by a, x, b.cboolean1 limit 10) t +PREHOOK: type: CREATEVIEW +PREHOOK: Input: default@alltypesorc +PREHOOK: Output: database:default +PREHOOK: Output: default@dest_v3 +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "949093880975cc807ad1a8003e8a8c7c", + "queryText": "alter view dest_v3 as\n select * from (\n select sum(a.ctinyint) over (partition by a.csmallint order by a.csmallint) a,\n count(b.cstring1) x, b.cboolean1\n from alltypesorc a join alltypesorc b on (a.cint = b.cint)\n where a.cboolean2 = true and b.cfloat > 0\n group by a.ctinyint, a.csmallint, b.cboolean1\n having count(a.cint) > 10\n order by a, x, b.cboolean1 limit 10) t", + "edges": [ + { + "sources": [ + 3, + 4, + 5, + 6, + 7 + ], + "targets": [ + 0 + ], + "expression": "(tok_function sum (. (tok_table_or_col a) ctinyint) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col a) csmallint)) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col a) csmallint))))))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 1 + ], + "expression": "count(default.alltypesorc.cstring1)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8, + 9 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "((a.cboolean2 = true) and (b.cfloat > 0.0))", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(count(default.alltypesorc.cint) > 10)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(a.cint = b.cint)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.a" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.x" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "default.dest_v3.cboolean1" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.csmallint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean2" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cfloat" + } + ] +} +PREHOOK: query: select * from dest_v3 limit 2 +PREHOOK: type: QUERY +PREHOOK: Input: default@alltypesorc +PREHOOK: Input: default@dest_v3 +#### A masked pattern was here #### +POSTHOOK: LINEAGE: { + "version": "1.0", + "engine": "mr", + "hash": "40bccc0722002f798d0548b59e369e83", + "queryText": "select * from dest_v3 limit 2", + "edges": [ + { + "sources": [ + 3, + 4, + 5, + 6, + 7 + ], + "targets": [ + 0 + ], + "expression": "(tok_function sum (. (tok_table_or_col $hdt$_0) $f0) (tok_windowspec (tok_partitioningspec (tok_distributeby (. (tok_table_or_col $hdt$_0) $f1)) (tok_orderby (tok_tabsortcolnameasc (. (tok_table_or_col $hdt$_0) $f1)))) (tok_windowvalues (preceding 2147483647) current)))", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 6 + ], + "targets": [ + 1 + ], + "expression": "count(default.alltypesorc.cstring1)", + "edgeType": "PROJECTION" + }, + { + "sources": [ + 5 + ], + "targets": [ + 2 + ], + "edgeType": "PROJECTION" + }, + { + "sources": [ + 8 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(a.cboolean2 = true)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(count(default.alltypesorc.cint) > 10)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 9 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(a.cfloat > 0.0)", + "edgeType": "PREDICATE" + }, + { + "sources": [ + 7 + ], + "targets": [ + 0, + 1, + 2 + ], + "expression": "(a.cint = a.cint)", + "edgeType": "PREDICATE" + } + ], + "vertices": [ + { + "id": 0, + "vertexType": "COLUMN", + "vertexId": "dest_v3.a" + }, + { + "id": 1, + "vertexType": "COLUMN", + "vertexId": "dest_v3.x" + }, + { + "id": 2, + "vertexType": "COLUMN", + "vertexId": "dest_v3.cboolean1" + }, + { + "id": 3, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.ctinyint" + }, + { + "id": 4, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.csmallint" + }, + { + "id": 5, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean1" + }, + { + "id": 6, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cstring1" + }, + { + "id": 7, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cint" + }, + { + "id": 8, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cboolean2" + }, + { + "id": 9, + "vertexType": "COLUMN", + "vertexId": "default.alltypesorc.cfloat" + } + ] +} +38 216 false +38 229 true diff --git a/ql/src/test/results/clientpositive/load_dyn_part13.q.out b/ql/src/test/results/clientpositive/load_dyn_part13.q.out index 1776e1282aa2..9e0ac6fee237 100644 --- a/ql/src/test/results/clientpositive/load_dyn_part13.q.out +++ b/ql/src/test/results/clientpositive/load_dyn_part13.q.out @@ -147,10 +147,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@nzhang_part13@ds=2010-03-03/hr=22 POSTHOOK: Output: default@nzhang_part13@ds=2010-03-03/hr=33 -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions nzhang_part13 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@nzhang_part13 diff --git a/ql/src/test/results/clientpositive/multiMapJoin1.q.out b/ql/src/test/results/clientpositive/multiMapJoin1.q.out index 08d2bc11223c..8548fc79603b 100644 --- a/ql/src/test/results/clientpositive/multiMapJoin1.q.out +++ b/ql/src/test/results/clientpositive/multiMapJoin1.q.out @@ -155,8 +155,8 @@ select * from POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@bigtbl -POSTHOOK: Lineage: bigtbl.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: bigtbl.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: bigtbl.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: bigtbl.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] RUN: Stage-1:MAPRED RUN: Stage-7:CONDITIONAL RUN: Stage-4:MOVE @@ -677,9 +677,9 @@ select * from POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@bigtbl -POSTHOOK: Lineage: bigtbl.key1 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: bigtbl.key2 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: bigtbl.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: bigtbl.key1 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: bigtbl.key2 EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: bigtbl.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] RUN: Stage-1:MAPRED RUN: Stage-7:CONDITIONAL RUN: Stage-4:MOVE diff --git a/ql/src/test/results/clientpositive/multi_insert.q.out b/ql/src/test/results/clientpositive/multi_insert.q.out index ea2e55442fac..6f321c30e971 100644 --- a/ql/src/test/results/clientpositive/multi_insert.q.out +++ b/ql/src/test/results/clientpositive/multi_insert.q.out @@ -1590,10 +1590,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1860,10 +1860,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -2042,10 +2042,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -2312,10 +2312,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 diff --git a/ql/src/test/results/clientpositive/multi_insert_move_tasks_share_dependencies.q.out b/ql/src/test/results/clientpositive/multi_insert_move_tasks_share_dependencies.q.out index 0fbad492c75a..8f9dd1216bc1 100644 --- a/ql/src/test/results/clientpositive/multi_insert_move_tasks_share_dependencies.q.out +++ b/ql/src/test/results/clientpositive/multi_insert_move_tasks_share_dependencies.q.out @@ -1626,10 +1626,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1900,10 +1900,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -2086,10 +2086,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -2360,10 +2360,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 diff --git a/ql/src/test/results/clientpositive/orc_dictionary_threshold.q.out b/ql/src/test/results/clientpositive/orc_dictionary_threshold.q.out index 10ed4ac19690..a57243e26869 100644 --- a/ql/src/test/results/clientpositive/orc_dictionary_threshold.q.out +++ b/ql/src/test/results/clientpositive/orc_dictionary_threshold.q.out @@ -149,7 +149,7 @@ SELECT CONCAT("k", key) AS key FROM src_thousand POSTHOOK: type: QUERY POSTHOOK: Input: default@src_thousand POSTHOOK: Output: default@test_orc -POSTHOOK: Lineage: test_orc.key EXPRESSION [(src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), (src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), (src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), (src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), (src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), (src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: test_orc.key EXPRESSION [(src_thousand)src_thousand.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT SUM(HASH(key)) FROM test_orc PREHOOK: type: QUERY PREHOOK: Input: default@test_orc diff --git a/ql/src/test/results/clientpositive/ptf.q.out b/ql/src/test/results/clientpositive/ptf.q.out index 6bd17477f889..e61703c4d6ea 100644 --- a/ql/src/test/results/clientpositive/ptf.q.out +++ b/ql/src/test/results/clientpositive/ptf.q.out @@ -3285,20 +3285,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/spark/groupby_sort_1_23.q.out b/ql/src/test/results/clientpositive/spark/groupby_sort_1_23.q.out index 6c0f4a58d565..56aedd691cf5 100644 --- a/ql/src/test/results/clientpositive/spark/groupby_sort_1_23.q.out +++ b/ql/src/test/results/clientpositive/spark/groupby_sort_1_23.q.out @@ -2212,8 +2212,8 @@ SELECT key, count(1) FROM T1 GROUP BY key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -2605,8 +2605,8 @@ SELECT key + key as key, count(1) as cnt FROM T1 GROUP BY key + key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -2988,7 +2988,7 @@ ON subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/groupby_sort_skew_1_23.q.out b/ql/src/test/results/clientpositive/spark/groupby_sort_skew_1_23.q.out index 8248a70f84ef..048507cb4107 100644 --- a/ql/src/test/results/clientpositive/spark/groupby_sort_skew_1_23.q.out +++ b/ql/src/test/results/clientpositive/spark/groupby_sort_skew_1_23.q.out @@ -2284,8 +2284,8 @@ SELECT key, count(1) FROM T1 GROUP BY key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -2695,8 +2695,8 @@ SELECT key + key as key, count(1) as cnt FROM T1 GROUP BY key + key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), (t1)t1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -3078,7 +3078,7 @@ ON subq1.key = subq2.key POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, (t1)t1.null, ] +POSTHOOK: Lineage: outputtbl1.cnt EXPRESSION [(t1)t1.null, ] POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(t1)t1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: SELECT * FROM outputTbl1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/join34.q.out b/ql/src/test/results/clientpositive/spark/join34.q.out index 09b8b6b0840d..01b9242bc25f 100644 --- a/ql/src/test/results/clientpositive/spark/join34.q.out +++ b/ql/src/test/results/clientpositive/spark/join34.q.out @@ -456,7 +456,7 @@ POSTHOOK: Input: default@src POSTHOOK: Input: default@src1 POSTHOOK: Output: default@dest_j1 POSTHOOK: Lineage: dest_j1.key SIMPLE [(src1)x.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.FieldSchema(name:value, type:string, comment:default), (src)x.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.FieldSchema(name:value, type:string, comment:default), ] POSTHOOK: Lineage: dest_j1.value SIMPLE [(src1)x.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from dest_j1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/join35.q.out b/ql/src/test/results/clientpositive/spark/join35.q.out index e84c86007084..8ccffc8d5f8a 100644 --- a/ql/src/test/results/clientpositive/spark/join35.q.out +++ b/ql/src/test/results/clientpositive/spark/join35.q.out @@ -512,7 +512,7 @@ POSTHOOK: Input: default@src POSTHOOK: Input: default@src1 POSTHOOK: Output: default@dest_j1 POSTHOOK: Lineage: dest_j1.key SIMPLE [(src1)x.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.null, (src)x.null, ] +POSTHOOK: Lineage: dest_j1.val2 EXPRESSION [(src)x.null, ] POSTHOOK: Lineage: dest_j1.value SIMPLE [(src1)x.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from dest_j1 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/load_dyn_part13.q.out b/ql/src/test/results/clientpositive/spark/load_dyn_part13.q.out index 4480310a3568..7f403d575dfe 100644 --- a/ql/src/test/results/clientpositive/spark/load_dyn_part13.q.out +++ b/ql/src/test/results/clientpositive/spark/load_dyn_part13.q.out @@ -148,10 +148,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@nzhang_part13@ds=2010-03-03/hr=22 POSTHOOK: Output: default@nzhang_part13@ds=2010-03-03/hr=33 -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=22).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: nzhang_part13 PARTITION(ds=2010-03-03,hr=33).value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions nzhang_part13 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@nzhang_part13 diff --git a/ql/src/test/results/clientpositive/spark/multi_insert.q.out b/ql/src/test/results/clientpositive/spark/multi_insert.q.out index c77eb0554d84..c77a69109227 100644 --- a/ql/src/test/results/clientpositive/spark/multi_insert.q.out +++ b/ql/src/test/results/clientpositive/spark/multi_insert.q.out @@ -1275,10 +1275,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1458,10 +1458,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1641,10 +1641,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1824,10 +1824,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 diff --git a/ql/src/test/results/clientpositive/spark/multi_insert_move_tasks_share_dependencies.q.out b/ql/src/test/results/clientpositive/spark/multi_insert_move_tasks_share_dependencies.q.out index e3ef39e2c89d..cddf923b6216 100644 --- a/ql/src/test/results/clientpositive/spark/multi_insert_move_tasks_share_dependencies.q.out +++ b/ql/src/test/results/clientpositive/spark/multi_insert_move_tasks_share_dependencies.q.out @@ -1311,10 +1311,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1498,10 +1498,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1685,10 +1685,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 @@ -1872,10 +1872,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@src_multi1 POSTHOOK: Output: default@src_multi2 -POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi1.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_multi2.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from src_multi1 PREHOOK: type: QUERY PREHOOK: Input: default@src_multi1 diff --git a/ql/src/test/results/clientpositive/spark/ptf.q.out b/ql/src/test/results/clientpositive/spark/ptf.q.out index 1ca69519707d..647b83e6a55e 100644 --- a/ql/src/test/results/clientpositive/spark/ptf.q.out +++ b/ql/src/test/results/clientpositive/spark/ptf.q.out @@ -3192,20 +3192,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/spark/union22.q.out b/ql/src/test/results/clientpositive/spark/union22.q.out index fdb4d475f039..6185e667cb43 100644 --- a/ql/src/test/results/clientpositive/spark/union22.q.out +++ b/ql/src/test/results/clientpositive/spark/union22.q.out @@ -581,8 +581,8 @@ POSTHOOK: Input: default@dst_union22_delta@ds=1 POSTHOOK: Output: default@dst_union22@ds=2 POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k1 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k1, type:string, comment:null), (dst_union22)a.FieldSchema(name:k1, type:string, comment:null), ] POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k2 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k2, type:string, comment:null), (dst_union22)a.FieldSchema(name:k2, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] PREHOOK: query: select * from dst_union22 where ds = '2' PREHOOK: type: QUERY PREHOOK: Input: default@dst_union22 diff --git a/ql/src/test/results/clientpositive/spark/union28.q.out b/ql/src/test/results/clientpositive/spark/union28.q.out index 98582df5ba6f..e7b3c263ad1e 100644 --- a/ql/src/test/results/clientpositive/spark/union28.q.out +++ b/ql/src/test/results/clientpositive/spark/union28.q.out @@ -184,8 +184,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/spark/union29.q.out b/ql/src/test/results/clientpositive/spark/union29.q.out index 1776b4d7f7ee..05c44d1768f0 100644 --- a/ql/src/test/results/clientpositive/spark/union29.q.out +++ b/ql/src/test/results/clientpositive/spark/union29.q.out @@ -147,8 +147,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/spark/union30.q.out b/ql/src/test/results/clientpositive/spark/union30.q.out index 34096231b185..c5083ea99cc3 100644 --- a/ql/src/test/results/clientpositive/spark/union30.q.out +++ b/ql/src/test/results/clientpositive/spark/union30.q.out @@ -233,8 +233,8 @@ select key, value from src POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/spark/union33.q.out b/ql/src/test/results/clientpositive/spark/union33.q.out index 0e6b1aa63660..271c377d82c3 100644 --- a/ql/src/test/results/clientpositive/spark/union33.q.out +++ b/ql/src/test/results/clientpositive/spark/union33.q.out @@ -156,7 +156,7 @@ UNION ALL POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.null, ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY @@ -309,7 +309,7 @@ UNION ALL POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.null, (src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/union_date_trim.q.out b/ql/src/test/results/clientpositive/spark/union_date_trim.q.out index 86b96ac0ebde..e2f5269345cf 100644 --- a/ql/src/test/results/clientpositive/spark/union_date_trim.q.out +++ b/ql/src/test/results/clientpositive/spark/union_date_trim.q.out @@ -50,5 +50,5 @@ insert into table testDate select id, tm from (select id, dt as tm from testDate POSTHOOK: type: QUERY POSTHOOK: Input: default@testdate POSTHOOK: Output: default@testdate -POSTHOOK: Lineage: testdate.dt EXPRESSION [(testdate)testdate.FieldSchema(name:dt, type:date, comment:null), (testdate)testdate.FieldSchema(name:dt, type:date, comment:null), (testdate)testdate.FieldSchema(name:dt, type:date, comment:null), ] -POSTHOOK: Lineage: testdate.id EXPRESSION [(testdate)testdate.FieldSchema(name:id, type:int, comment:null), (testdate)testdate.FieldSchema(name:id, type:int, comment:null), (testdate)testdate.FieldSchema(name:id, type:int, comment:null), ] +POSTHOOK: Lineage: testdate.dt EXPRESSION [(testdate)testdate.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: testdate.id EXPRESSION [(testdate)testdate.FieldSchema(name:id, type:int, comment:null), ] diff --git a/ql/src/test/results/clientpositive/spark/union_remove_1.q.out b/ql/src/test/results/clientpositive/spark/union_remove_1.q.out index ba0e293875a7..c7616b416ceb 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_1.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_1.q.out @@ -177,8 +177,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_10.q.out b/ql/src/test/results/clientpositive/spark/union_remove_10.q.out index 2718775038ba..586b88bbd1cd 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_10.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_10.q.out @@ -239,7 +239,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_11.q.out b/ql/src/test/results/clientpositive/spark/union_remove_11.q.out index be65741b247d..9ddf606e0ff6 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_11.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_11.q.out @@ -229,7 +229,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_15.q.out b/ql/src/test/results/clientpositive/spark/union_remove_15.q.out index 26cfbabc65c0..62dd62c053ed 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_15.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_15.q.out @@ -194,10 +194,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_16.q.out b/ql/src/test/results/clientpositive/spark/union_remove_16.q.out index 7a7aaf216f52..42aa20aa7e1f 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_16.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_16.q.out @@ -234,10 +234,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_17.q.out b/ql/src/test/results/clientpositive/spark/union_remove_17.q.out index 74a5b23885a6..c6fdfa5d7ab8 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_17.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_17.q.out @@ -145,9 +145,9 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_18.q.out b/ql/src/test/results/clientpositive/spark/union_remove_18.q.out index a5e15c5a2b9d..d7325719101a 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_18.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_18.q.out @@ -196,18 +196,18 @@ POSTHOOK: Output: default@outputtbl1@ds=13 POSTHOOK: Output: default@outputtbl1@ds=17 POSTHOOK: Output: default@outputtbl1@ds=18 POSTHOOK: Output: default@outputtbl1@ds=28 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_19.q.out b/ql/src/test/results/clientpositive/spark/union_remove_19.q.out index ad444009d379..982dd67bd393 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_19.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_19.q.out @@ -181,8 +181,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -380,8 +380,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -555,8 +555,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_2.q.out b/ql/src/test/results/clientpositive/spark/union_remove_2.q.out index 26c4effcaae8..3993ac5ea62c 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_2.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_2.q.out @@ -183,7 +183,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_20.q.out b/ql/src/test/results/clientpositive/spark/union_remove_20.q.out index 1d671779ce2d..13d3b5cbefa9 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_20.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_20.q.out @@ -187,8 +187,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_21.q.out b/ql/src/test/results/clientpositive/spark/union_remove_21.q.out index 9f5b0702f5b0..f5c763684422 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_21.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_21.q.out @@ -173,7 +173,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_22.q.out b/ql/src/test/results/clientpositive/spark/union_remove_22.q.out index 2e01432f9a53..d00fb893b19f 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_22.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_22.q.out @@ -189,9 +189,9 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -390,9 +390,9 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_23.q.out b/ql/src/test/results/clientpositive/spark/union_remove_23.q.out index d9875f39b8aa..3fa6ae06e543 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_23.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_23.q.out @@ -212,7 +212,7 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)a.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)a.null, (inputtbl1)a.null, (inputtbl1)b.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)a.null, (inputtbl1)b.null, (inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_24.q.out b/ql/src/test/results/clientpositive/spark/union_remove_24.q.out index 2659798d23e4..c0ce83fe1135 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_24.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_24.q.out @@ -183,8 +183,8 @@ SELECT * FROM POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_25.q.out b/ql/src/test/results/clientpositive/spark/union_remove_25.q.out index 0a9468498d67..8cd8c8d254d0 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_25.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_25.q.out @@ -195,8 +195,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=2004 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 partition(ds='2004') PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -399,8 +399,8 @@ POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 POSTHOOK: Output: default@outputtbl2@ds=2008-04-08 -POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions outputTbl2 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@outputtbl2 @@ -590,10 +590,10 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 POSTHOOK: Output: default@outputtbl3@ds=2008-04-08/hr=11 POSTHOOK: Output: default@outputtbl3@ds=2008-04-08/hr=12 -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions outputTbl3 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@outputtbl3 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_3.q.out b/ql/src/test/results/clientpositive/spark/union_remove_3.q.out index a14a8b437995..2126c1d8008a 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_3.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_3.q.out @@ -173,7 +173,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_4.q.out b/ql/src/test/results/clientpositive/spark/union_remove_4.q.out index 6c3d596cfbbc..7dd8e3eb28cb 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_4.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_4.q.out @@ -227,8 +227,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_5.q.out b/ql/src/test/results/clientpositive/spark/union_remove_5.q.out index 55baa8b67cb7..fe1fd8becf1e 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_5.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_5.q.out @@ -235,7 +235,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_6.q.out b/ql/src/test/results/clientpositive/spark/union_remove_6.q.out index cd3618910180..34bc8de6f944 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_6.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_6.q.out @@ -208,10 +208,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Output: default@outputtbl2 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out b/ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out index c981ae4ccd02..b5a2a753fbde 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_6_subq.q.out @@ -220,10 +220,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Output: default@outputtbl2 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_7.q.out b/ql/src/test/results/clientpositive/spark/union_remove_7.q.out index 084fbd678a28..530be3fcb91b 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_7.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_7.q.out @@ -181,8 +181,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/spark/union_remove_8.q.out b/ql/src/test/results/clientpositive/spark/union_remove_8.q.out index f580bd8c6d4a..06adb05b5de4 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_8.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_8.q.out @@ -187,7 +187,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_remove_9.q.out b/ql/src/test/results/clientpositive/spark/union_remove_9.q.out index 0931d11ba717..78579998cb15 100644 --- a/ql/src/test/results/clientpositive/spark/union_remove_9.q.out +++ b/ql/src/test/results/clientpositive/spark/union_remove_9.q.out @@ -243,7 +243,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/spark/union_top_level.q.out b/ql/src/test/results/clientpositive/spark/union_top_level.q.out index 9b10a46e410a..e1fa62ce436d 100644 --- a/ql/src/test/results/clientpositive/spark/union_top_level.q.out +++ b/ql/src/test/results/clientpositive/spark/union_top_level.q.out @@ -786,7 +786,7 @@ select * from (select key, 2 as value from src where key % 3 == 2 limit 3)c POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_top -POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: union_top.value EXPRESSION [] PREHOOK: query: select * from union_top PREHOOK: type: QUERY @@ -987,7 +987,7 @@ select * from (select key, 2 as value from src where key % 3 == 2 limit 3)c POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_top -POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: union_top.value EXPRESSION [] PREHOOK: query: select * from union_top PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/spark/vectorized_ptf.q.out b/ql/src/test/results/clientpositive/spark/vectorized_ptf.q.out index 8447c0462c92..20f918e934c0 100644 --- a/ql/src/test/results/clientpositive/spark/vectorized_ptf.q.out +++ b/ql/src/test/results/clientpositive/spark/vectorized_ptf.q.out @@ -6208,20 +6208,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part_orc POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/spark/windowing.q.out b/ql/src/test/results/clientpositive/spark/windowing.q.out index c8117d54c1b6..b17bfc1ab108 100644 --- a/ql/src/test/results/clientpositive/spark/windowing.q.out +++ b/ql/src/test/results/clientpositive/spark/windowing.q.out @@ -1338,26 +1338,26 @@ POSTHOOK: Input: default@part POSTHOOK: Output: default@part_1 POSTHOOK: Output: default@part_2 POSTHOOK: Output: default@part_3 -POSTHOOK: Lineage: part_1.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.c SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.ca SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.fv SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_1.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] +POSTHOOK: Lineage: part_1.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] +POSTHOOK: Lineage: part_2.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.c SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.ca SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.fv SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] PREHOOK: query: select * from part_1 PREHOOK: type: QUERY PREHOOK: Input: default@part_1 diff --git a/ql/src/test/results/clientpositive/temp_table_windowing_expressions.q.out b/ql/src/test/results/clientpositive/temp_table_windowing_expressions.q.out index 417f595cccdd..61a74f08b883 100644 --- a/ql/src/test/results/clientpositive/temp_table_windowing_expressions.q.out +++ b/ql/src/test/results/clientpositive/temp_table_windowing_expressions.q.out @@ -656,10 +656,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@over10k POSTHOOK: Output: default@t1 POSTHOOK: Output: default@t2 -POSTHOOK: Lineage: t1.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t1.b1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t2.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t2.b1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: t1.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), ] +POSTHOOK: Lineage: t1.b1 SIMPLE [(over10k)over10k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: t2.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), ] +POSTHOOK: Lineage: t2.b1 SIMPLE [(over10k)over10k.FieldSchema(name:s, type:string, comment:null), ] PREHOOK: query: select * from t1 limit 3 PREHOOK: type: QUERY PREHOOK: Input: default@t1 diff --git a/ql/src/test/results/clientpositive/tez/ptf.q.out b/ql/src/test/results/clientpositive/tez/ptf.q.out index b4b7a4b3e0b7..88d1a9881341 100644 --- a/ql/src/test/results/clientpositive/tez/ptf.q.out +++ b/ql/src/test/results/clientpositive/tez/ptf.q.out @@ -3179,20 +3179,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out b/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out index 3d04de9fad51..cab3a28670a1 100644 --- a/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out +++ b/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out @@ -6960,8 +6960,8 @@ POSTHOOK: Input: default@dst_union22_delta@ds=1 POSTHOOK: Output: default@dst_union22@ds=2 POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k1 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k1, type:string, comment:null), (dst_union22)a.FieldSchema(name:k1, type:string, comment:null), ] POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k2 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k2, type:string, comment:null), (dst_union22)a.FieldSchema(name:k2, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] PREHOOK: query: select * from dst_union22 where ds = '2' PREHOOK: type: QUERY PREHOOK: Input: default@dst_union22 @@ -11471,8 +11471,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union @@ -11698,8 +11698,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union29 -POSTHOOK: Lineage: union_subq_union29.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union29.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union29.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union29.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union29 order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union29 @@ -12344,8 +12344,8 @@ select key, value from src POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union30 -POSTHOOK: Lineage: union_subq_union30.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union30.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union30.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union30.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union30 order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union30 @@ -14151,7 +14151,7 @@ UNION DISTINCT POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.null, ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY @@ -14316,7 +14316,7 @@ UNION DISTINCT POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.null, (src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out b/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out index 9640264d85ac..5cccaed6010e 100644 --- a/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out +++ b/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out @@ -6198,20 +6198,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part_orc POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/union22.q.out b/ql/src/test/results/clientpositive/union22.q.out index f14c512098fb..c62a90dc44e9 100644 --- a/ql/src/test/results/clientpositive/union22.q.out +++ b/ql/src/test/results/clientpositive/union22.q.out @@ -840,8 +840,8 @@ POSTHOOK: Input: default@dst_union22_delta@ds=1 POSTHOOK: Output: default@dst_union22@ds=2 POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k1 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k1, type:string, comment:null), (dst_union22)a.FieldSchema(name:k1, type:string, comment:null), ] POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k2 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k2, type:string, comment:null), (dst_union22)a.FieldSchema(name:k2, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] PREHOOK: query: select * from dst_union22 where ds = '2' PREHOOK: type: QUERY PREHOOK: Input: default@dst_union22 diff --git a/ql/src/test/results/clientpositive/union28.q.out b/ql/src/test/results/clientpositive/union28.q.out index ab3186e82248..38f8ee6217cf 100644 --- a/ql/src/test/results/clientpositive/union28.q.out +++ b/ql/src/test/results/clientpositive/union28.q.out @@ -246,8 +246,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/union29.q.out b/ql/src/test/results/clientpositive/union29.q.out index 3a60d0a03669..87ba275b87a1 100644 --- a/ql/src/test/results/clientpositive/union29.q.out +++ b/ql/src/test/results/clientpositive/union29.q.out @@ -190,8 +190,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/union30.q.out b/ql/src/test/results/clientpositive/union30.q.out index 4529074118aa..894ed49d0551 100644 --- a/ql/src/test/results/clientpositive/union30.q.out +++ b/ql/src/test/results/clientpositive/union30.q.out @@ -295,8 +295,8 @@ select key, value from src POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union diff --git a/ql/src/test/results/clientpositive/union33.q.out b/ql/src/test/results/clientpositive/union33.q.out index b44e7b2f44eb..308cd8bd9b16 100644 --- a/ql/src/test/results/clientpositive/union33.q.out +++ b/ql/src/test/results/clientpositive/union33.q.out @@ -218,7 +218,7 @@ UNION ALL POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.null, ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY @@ -433,7 +433,7 @@ UNION ALL POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.null, (src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/unionDistinct_1.q.out b/ql/src/test/results/clientpositive/unionDistinct_1.q.out index 207caf2197c7..8d74fbeb015c 100644 --- a/ql/src/test/results/clientpositive/unionDistinct_1.q.out +++ b/ql/src/test/results/clientpositive/unionDistinct_1.q.out @@ -7590,8 +7590,8 @@ POSTHOOK: Input: default@dst_union22_delta@ds=1 POSTHOOK: Output: default@dst_union22@ds=2 POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k1 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k1, type:string, comment:null), (dst_union22)a.FieldSchema(name:k1, type:string, comment:null), ] POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k2 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k2, type:string, comment:null), (dst_union22)a.FieldSchema(name:k2, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] -POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), (dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k3 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k3, type:string, comment:null), ] +POSTHOOK: Lineage: dst_union22 PARTITION(ds=2).k4 EXPRESSION [(dst_union22_delta)dst_union22_delta.FieldSchema(name:k4, type:string, comment:null), ] PREHOOK: query: select * from dst_union22 where ds = '2' PREHOOK: type: QUERY PREHOOK: Input: default@dst_union22 @@ -12349,8 +12349,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union -POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union @@ -12573,8 +12573,8 @@ select * from ( POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union29 -POSTHOOK: Lineage: union_subq_union29.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union29.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union29.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union29.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union29 order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union29 @@ -13301,8 +13301,8 @@ select key, value from src POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_subq_union30 -POSTHOOK: Lineage: union_subq_union30.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: union_subq_union30.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), (src)src.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union30.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_subq_union30.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: select * from union_subq_union30 order by key, value limit 20 PREHOOK: type: QUERY PREHOOK: Input: default@union_subq_union30 @@ -15128,7 +15128,7 @@ UNION DISTINCT POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.FieldSchema(name:value, type:string, comment:default), (src)src.null, ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY @@ -15292,7 +15292,7 @@ UNION DISTINCT POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@test_src -POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: test_src.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: test_src.value EXPRESSION [(src)src.null, (src)src.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: SELECT COUNT(*) FROM test_src PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/union_date_trim.q.out b/ql/src/test/results/clientpositive/union_date_trim.q.out index 86b96ac0ebde..e2f5269345cf 100644 --- a/ql/src/test/results/clientpositive/union_date_trim.q.out +++ b/ql/src/test/results/clientpositive/union_date_trim.q.out @@ -50,5 +50,5 @@ insert into table testDate select id, tm from (select id, dt as tm from testDate POSTHOOK: type: QUERY POSTHOOK: Input: default@testdate POSTHOOK: Output: default@testdate -POSTHOOK: Lineage: testdate.dt EXPRESSION [(testdate)testdate.FieldSchema(name:dt, type:date, comment:null), (testdate)testdate.FieldSchema(name:dt, type:date, comment:null), (testdate)testdate.FieldSchema(name:dt, type:date, comment:null), ] -POSTHOOK: Lineage: testdate.id EXPRESSION [(testdate)testdate.FieldSchema(name:id, type:int, comment:null), (testdate)testdate.FieldSchema(name:id, type:int, comment:null), (testdate)testdate.FieldSchema(name:id, type:int, comment:null), ] +POSTHOOK: Lineage: testdate.dt EXPRESSION [(testdate)testdate.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: testdate.id EXPRESSION [(testdate)testdate.FieldSchema(name:id, type:int, comment:null), ] diff --git a/ql/src/test/results/clientpositive/union_remove_1.q.out b/ql/src/test/results/clientpositive/union_remove_1.q.out index 5fa8caf03356..18307fc8ee6d 100644 --- a/ql/src/test/results/clientpositive/union_remove_1.q.out +++ b/ql/src/test/results/clientpositive/union_remove_1.q.out @@ -172,8 +172,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_10.q.out b/ql/src/test/results/clientpositive/union_remove_10.q.out index 228ff9e6d142..abc6b8bb1171 100644 --- a/ql/src/test/results/clientpositive/union_remove_10.q.out +++ b/ql/src/test/results/clientpositive/union_remove_10.q.out @@ -231,7 +231,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_11.q.out b/ql/src/test/results/clientpositive/union_remove_11.q.out index bf38f0a98c5f..362e0936e155 100644 --- a/ql/src/test/results/clientpositive/union_remove_11.q.out +++ b/ql/src/test/results/clientpositive/union_remove_11.q.out @@ -220,7 +220,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_15.q.out b/ql/src/test/results/clientpositive/union_remove_15.q.out index 67bdb1ee4a60..76f8c6c07f42 100644 --- a/ql/src/test/results/clientpositive/union_remove_15.q.out +++ b/ql/src/test/results/clientpositive/union_remove_15.q.out @@ -189,10 +189,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_16.q.out b/ql/src/test/results/clientpositive/union_remove_16.q.out index 2444337bde40..28c4c2db47ec 100644 --- a/ql/src/test/results/clientpositive/union_remove_16.q.out +++ b/ql/src/test/results/clientpositive/union_remove_16.q.out @@ -221,10 +221,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_17.q.out b/ql/src/test/results/clientpositive/union_remove_17.q.out index a1b947473283..476ca3a5a2b4 100644 --- a/ql/src/test/results/clientpositive/union_remove_17.q.out +++ b/ql/src/test/results/clientpositive/union_remove_17.q.out @@ -144,9 +144,9 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=1 POSTHOOK: Output: default@outputtbl1@ds=2 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1 PARTITION(ds=1).values EXPRESSION [] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2).values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_18.q.out b/ql/src/test/results/clientpositive/union_remove_18.q.out index 26e52e04141a..27986ba3a890 100644 --- a/ql/src/test/results/clientpositive/union_remove_18.q.out +++ b/ql/src/test/results/clientpositive/union_remove_18.q.out @@ -191,18 +191,18 @@ POSTHOOK: Output: default@outputtbl1@ds=13 POSTHOOK: Output: default@outputtbl1@ds=17 POSTHOOK: Output: default@outputtbl1@ds=18 POSTHOOK: Output: default@outputtbl1@ds=28 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=11).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=12).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=13).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=17).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=18).values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=28).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_19.q.out b/ql/src/test/results/clientpositive/union_remove_19.q.out index d8314f866015..2a1fd55e73f8 100644 --- a/ql/src/test/results/clientpositive/union_remove_19.q.out +++ b/ql/src/test/results/clientpositive/union_remove_19.q.out @@ -176,8 +176,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -370,8 +370,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 @@ -540,8 +540,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_2.q.out b/ql/src/test/results/clientpositive/union_remove_2.q.out index d3522f2c4035..78a6a4864a3b 100644 --- a/ql/src/test/results/clientpositive/union_remove_2.q.out +++ b/ql/src/test/results/clientpositive/union_remove_2.q.out @@ -183,7 +183,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_20.q.out b/ql/src/test/results/clientpositive/union_remove_20.q.out index 450372642876..922ba4c591b7 100644 --- a/ql/src/test/results/clientpositive/union_remove_20.q.out +++ b/ql/src/test/results/clientpositive/union_remove_20.q.out @@ -182,8 +182,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_21.q.out b/ql/src/test/results/clientpositive/union_remove_21.q.out index 98e0166b8b72..4eac30d93d05 100644 --- a/ql/src/test/results/clientpositive/union_remove_21.q.out +++ b/ql/src/test/results/clientpositive/union_remove_21.q.out @@ -168,7 +168,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_22.q.out b/ql/src/test/results/clientpositive/union_remove_22.q.out index 4f086f390532..01cce7a3289d 100644 --- a/ql/src/test/results/clientpositive/union_remove_22.q.out +++ b/ql/src/test/results/clientpositive/union_remove_22.q.out @@ -184,9 +184,9 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -380,9 +380,9 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values2 EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_23.q.out b/ql/src/test/results/clientpositive/union_remove_23.q.out index d0e21ba815a7..71ffa1ba8f05 100644 --- a/ql/src/test/results/clientpositive/union_remove_23.q.out +++ b/ql/src/test/results/clientpositive/union_remove_23.q.out @@ -215,7 +215,7 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)a.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)a.null, (inputtbl1)a.null, (inputtbl1)b.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)a.null, (inputtbl1)b.null, (inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_24.q.out b/ql/src/test/results/clientpositive/union_remove_24.q.out index f2f6bbabb375..7eaff6f8e127 100644 --- a/ql/src/test/results/clientpositive/union_remove_24.q.out +++ b/ql/src/test/results/clientpositive/union_remove_24.q.out @@ -178,8 +178,8 @@ SELECT * FROM POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_25.q.out b/ql/src/test/results/clientpositive/union_remove_25.q.out index 3858bdc8602c..78c1f077956f 100644 --- a/ql/src/test/results/clientpositive/union_remove_25.q.out +++ b/ql/src/test/results/clientpositive/union_remove_25.q.out @@ -190,8 +190,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1@ds=2004 -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1 PARTITION(ds=2004).values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 partition(ds='2004') PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 @@ -389,8 +389,8 @@ POSTHOOK: Input: default@srcpart POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 POSTHOOK: Output: default@outputtbl2@ds=2008-04-08 -POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl2 PARTITION(ds=2008-04-08).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions outputTbl2 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@outputtbl2 @@ -575,10 +575,10 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 POSTHOOK: Output: default@outputtbl3@ds=2008-04-08/hr=11 POSTHOOK: Output: default@outputtbl3@ds=2008-04-08/hr=12 -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), (srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=11).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).key EXPRESSION [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: outputtbl3 PARTITION(ds=2008-04-08,hr=12).values EXPRESSION [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] PREHOOK: query: show partitions outputTbl3 PREHOOK: type: SHOWPARTITIONS PREHOOK: Input: default@outputtbl3 diff --git a/ql/src/test/results/clientpositive/union_remove_3.q.out b/ql/src/test/results/clientpositive/union_remove_3.q.out index 40e554ab2638..f4cbf7b0953b 100644 --- a/ql/src/test/results/clientpositive/union_remove_3.q.out +++ b/ql/src/test/results/clientpositive/union_remove_3.q.out @@ -172,7 +172,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_4.q.out b/ql/src/test/results/clientpositive/union_remove_4.q.out index 10a8e8955720..1946cb6db45c 100644 --- a/ql/src/test/results/clientpositive/union_remove_4.q.out +++ b/ql/src/test/results/clientpositive/union_remove_4.q.out @@ -216,8 +216,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_5.q.out b/ql/src/test/results/clientpositive/union_remove_5.q.out index b59d6da5e6e2..b065ba0083f6 100644 --- a/ql/src/test/results/clientpositive/union_remove_5.q.out +++ b/ql/src/test/results/clientpositive/union_remove_5.q.out @@ -229,7 +229,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_6.q.out b/ql/src/test/results/clientpositive/union_remove_6.q.out index 67ba74cd6927..1b076c2f3ea2 100644 --- a/ql/src/test/results/clientpositive/union_remove_6.q.out +++ b/ql/src/test/results/clientpositive/union_remove_6.q.out @@ -226,10 +226,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Output: default@outputtbl2 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_6_subq.q.out b/ql/src/test/results/clientpositive/union_remove_6_subq.q.out index 0d1a436b9ef1..a38548f71377 100644 --- a/ql/src/test/results/clientpositive/union_remove_6_subq.q.out +++ b/ql/src/test/results/clientpositive/union_remove_6_subq.q.out @@ -238,10 +238,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 POSTHOOK: Output: default@outputtbl2 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] -POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl2.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl2.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: select * from outputTbl1 order by key, `values` PREHOOK: type: QUERY PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_7.q.out b/ql/src/test/results/clientpositive/union_remove_7.q.out index 76c678f50474..e00ba3acf4cd 100644 --- a/ql/src/test/results/clientpositive/union_remove_7.q.out +++ b/ql/src/test/results/clientpositive/union_remove_7.q.out @@ -176,8 +176,8 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] -POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, (inputtbl1)inputtbl1.null, ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE PREHOOK: Input: default@outputtbl1 diff --git a/ql/src/test/results/clientpositive/union_remove_8.q.out b/ql/src/test/results/clientpositive/union_remove_8.q.out index fe6744871b11..64cf98b8d3fd 100644 --- a/ql/src/test/results/clientpositive/union_remove_8.q.out +++ b/ql/src/test/results/clientpositive/union_remove_8.q.out @@ -187,7 +187,7 @@ FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_remove_9.q.out b/ql/src/test/results/clientpositive/union_remove_9.q.out index 684091bffb1e..bf7f8de5923a 100644 --- a/ql/src/test/results/clientpositive/union_remove_9.q.out +++ b/ql/src/test/results/clientpositive/union_remove_9.q.out @@ -234,7 +234,7 @@ select * FROM ( POSTHOOK: type: QUERY POSTHOOK: Input: default@inputtbl1 POSTHOOK: Output: default@outputtbl1 -POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), (inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: outputtbl1.key EXPRESSION [(inputtbl1)inputtbl1.FieldSchema(name:key, type:string, comment:null), ] POSTHOOK: Lineage: outputtbl1.values EXPRESSION [(inputtbl1)inputtbl1.null, ] PREHOOK: query: desc formatted outputTbl1 PREHOOK: type: DESCTABLE diff --git a/ql/src/test/results/clientpositive/union_top_level.q.out b/ql/src/test/results/clientpositive/union_top_level.q.out index 1db196f25b9a..2773ad82c892 100644 --- a/ql/src/test/results/clientpositive/union_top_level.q.out +++ b/ql/src/test/results/clientpositive/union_top_level.q.out @@ -992,7 +992,7 @@ select * from (select key, 2 as value from src where key % 3 == 2 limit 3)c POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_top -POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: union_top.value EXPRESSION [] PREHOOK: query: select * from union_top PREHOOK: type: QUERY @@ -1265,7 +1265,7 @@ select * from (select key, 2 as value from src where key % 3 == 2 limit 3)c POSTHOOK: type: QUERY POSTHOOK: Input: default@src POSTHOOK: Output: default@union_top -POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), (src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: union_top.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: union_top.value EXPRESSION [] PREHOOK: query: select * from union_top PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/vectorized_ptf.q.out b/ql/src/test/results/clientpositive/vectorized_ptf.q.out index 194261ff4fa7..072536679eaf 100644 --- a/ql/src/test/results/clientpositive/vectorized_ptf.q.out +++ b/ql/src/test/results/clientpositive/vectorized_ptf.q.out @@ -7046,20 +7046,20 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@part_orc POSTHOOK: Output: default@part_4 POSTHOOK: Output: default@part_5 -POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part_orc)part_orc.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part_orc)part_orc.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_4.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_4.s SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.cud SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.dr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.fv1 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_mfgr SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_name SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.p_size SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.r SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_5.s2 SCRIPT [(part_orc)part_orc.FieldSchema(name:p_partkey, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_name, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_mfgr, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_brand, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_type, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_size, type:int, comment:null), (part_orc)part_orc.FieldSchema(name:p_container, type:string, comment:null), (part_orc)part_orc.FieldSchema(name:p_retailprice, type:double, comment:null), (part_orc)part_orc.FieldSchema(name:p_comment, type:string, comment:null), ] PREHOOK: query: select * from part_4 PREHOOK: type: QUERY PREHOOK: Input: default@part_4 diff --git a/ql/src/test/results/clientpositive/windowing.q.out b/ql/src/test/results/clientpositive/windowing.q.out index c8117d54c1b6..b17bfc1ab108 100644 --- a/ql/src/test/results/clientpositive/windowing.q.out +++ b/ql/src/test/results/clientpositive/windowing.q.out @@ -1338,26 +1338,26 @@ POSTHOOK: Input: default@part POSTHOOK: Output: default@part_1 POSTHOOK: Output: default@part_2 POSTHOOK: Output: default@part_3 -POSTHOOK: Lineage: part_1.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_1.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_2.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.c SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.ca SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.fv SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_mfgr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_name SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: part_3.p_size SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), (part)part.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (part)part.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (part)part.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: part_1.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] +POSTHOOK: Lineage: part_1.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_1.s SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.cud SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.dr SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.fv1 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] +POSTHOOK: Lineage: part_2.r SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_2.s2 SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.c SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.ca SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.fv SCRIPT [(part)part.FieldSchema(name:p_partkey, type:int, comment:null), (part)part.FieldSchema(name:p_name, type:string, comment:null), (part)part.FieldSchema(name:p_mfgr, type:string, comment:null), (part)part.FieldSchema(name:p_brand, type:string, comment:null), (part)part.FieldSchema(name:p_type, type:string, comment:null), (part)part.FieldSchema(name:p_size, type:int, comment:null), (part)part.FieldSchema(name:p_container, type:string, comment:null), (part)part.FieldSchema(name:p_retailprice, type:double, comment:null), (part)part.FieldSchema(name:p_comment, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_mfgr SIMPLE [(part)part.FieldSchema(name:p_mfgr, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_name SIMPLE [(part)part.FieldSchema(name:p_name, type:string, comment:null), ] +POSTHOOK: Lineage: part_3.p_size SIMPLE [(part)part.FieldSchema(name:p_size, type:int, comment:null), ] PREHOOK: query: select * from part_1 PREHOOK: type: QUERY PREHOOK: Input: default@part_1 diff --git a/ql/src/test/results/clientpositive/windowing_expressions.q.out b/ql/src/test/results/clientpositive/windowing_expressions.q.out index 5c411eff28b2..c91403b741a3 100644 --- a/ql/src/test/results/clientpositive/windowing_expressions.q.out +++ b/ql/src/test/results/clientpositive/windowing_expressions.q.out @@ -656,10 +656,10 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@over10k POSTHOOK: Output: default@t1 POSTHOOK: Output: default@t2 -POSTHOOK: Lineage: t1.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t1.b1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t2.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] -POSTHOOK: Lineage: t2.b1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), (over10k)over10k.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, type:bigint, comment:), (over10k)over10k.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), (over10k)over10k.FieldSchema(name:ROW__ID, type:struct, comment:), ] +POSTHOOK: Lineage: t1.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), ] +POSTHOOK: Lineage: t1.b1 SIMPLE [(over10k)over10k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: t2.a1 SCRIPT [(over10k)over10k.FieldSchema(name:t, type:tinyint, comment:null), (over10k)over10k.FieldSchema(name:si, type:smallint, comment:null), (over10k)over10k.FieldSchema(name:i, type:int, comment:null), (over10k)over10k.FieldSchema(name:b, type:bigint, comment:null), (over10k)over10k.FieldSchema(name:f, type:float, comment:null), (over10k)over10k.FieldSchema(name:d, type:double, comment:null), (over10k)over10k.FieldSchema(name:bo, type:boolean, comment:null), (over10k)over10k.FieldSchema(name:s, type:string, comment:null), (over10k)over10k.FieldSchema(name:ts, type:timestamp, comment:null), (over10k)over10k.FieldSchema(name:dec, type:decimal(4,2), comment:null), (over10k)over10k.FieldSchema(name:bin, type:binary, comment:null), ] +POSTHOOK: Lineage: t2.b1 SIMPLE [(over10k)over10k.FieldSchema(name:s, type:string, comment:null), ] PREHOOK: query: select * from t1 limit 3 PREHOOK: type: QUERY PREHOOK: Input: default@t1