diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java index ea3ac70..55c59a7 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java @@ -95,7 +95,7 @@ void addRewrites(TokenRewriteStream stream, QB qb, String program, ASTNode sqNode = sqW != null ? sqW.getOriginalSubQueryASTForRewrite() : sqH.getOriginalSubQueryASTForRewrite(); ASTNode tokQry = getQueryASTNode(sqNode); - ASTNode tokFrom = (ASTNode) tokQry.getChild(0); + ASTNode tokFrom = (ASTNode) tokQry.getChild(1); StringBuilder addedJoins = new StringBuilder(); @@ -119,7 +119,7 @@ void addRewrites(TokenRewriteStream stream, QBSubQuery sq, String program, PrintStream out, String qbAlias, boolean isWhere, StringBuilder addedJoins) { ASTNode sqNode = sq.getOriginalSubQueryASTForRewrite(); ASTNode tokQry = getQueryASTNode(sqNode); - ASTNode tokInsert = (ASTNode) tokQry.getChild(1); + ASTNode tokInsert = (ASTNode) tokQry.getChild(0); ASTNode tokWhere = null; for(int i=0; i < tokInsert.getChildCount(); i++) { diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/FromClauseParser.g ql/src/java/org/apache/hadoop/hive/ql/parse/FromClauseParser.g index f448b16..356f318 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/FromClauseParser.g +++ ql/src/java/org/apache/hadoop/hive/ql/parse/FromClauseParser.g @@ -76,11 +76,13 @@ aliasList //----------------------- Rules for parsing fromClause ------------------------------ // from [col1, col2, col3] table1, [col4, col5] table2 -fromClause +fromClause[boolean base] @init { gParent.pushMsg("from clause", state); } @after { gParent.popMsg(state); } : - KW_FROM joinSource -> ^(TOK_FROM joinSource) + KW_FROM joinSource + -> {base}? ^(TOK_FROM_BASE joinSource) + -> ^(TOK_FROM joinSource) ; joinSource diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g index a76cad7..80d24f5 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g +++ ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g @@ -33,6 +33,7 @@ TOK_SELECT; TOK_SELECTDI; TOK_SELEXPR; TOK_FROM; +TOK_FROM_BASE; TOK_TAB; TOK_PARTSPEC; TOK_PARTVAL; @@ -2069,37 +2070,42 @@ cteStatement ; fromStatement[boolean topLevel] -: (singleFromStatement -> singleFromStatement) - (u=setOperator r=singleFromStatement +: (singleFromStatement[topLevel] -> singleFromStatement) + (u=setOperator r=singleFromStatement[topLevel] -> ^($u {$fromStatement.tree} $r) )* -> {u != null && topLevel}? ^(TOK_QUERY + ^(TOK_INSERT + ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) + ^(TOK_SELECT ^(TOK_SELEXPR TOK_ALLCOLREF)) + ) ^(TOK_FROM ^(TOK_SUBQUERY {$fromStatement.tree} {adaptor.create(Identifier, generateUnionAlias())} ) ) - ^(TOK_INSERT - ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) - ^(TOK_SELECT ^(TOK_SELEXPR TOK_ALLCOLREF)) - ) ) -> {$fromStatement.tree} ; - -singleFromStatement +singleFromStatement[boolean topLevel] : - fromClause - ( b+=body )+ -> ^(TOK_QUERY fromClause body+) + fromClause[true] fromBody[topLevel] -> ^(TOK_QUERY fromClause fromBody) ; +fromBody[boolean topLevel] + : + singleInsertSelectStatement+ + | + selectStatement[topLevel] + ; + regularBody[boolean topLevel] : i=insertClause s=selectStatement[topLevel] - {$s.tree.getChild(1).replaceChildren(0, 0, $i.tree);} -> {$s.tree} + {$s.tree.getChild(0).replaceChildren(0, 0, $i.tree);} -> {$s.tree} | selectStatement[topLevel] ; @@ -2110,16 +2116,16 @@ regularBody[boolean topLevel] -> ^($u {$selectStatement.tree} $b) )* -> {u != null && topLevel}? ^(TOK_QUERY + ^(TOK_INSERT + ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) + ^(TOK_SELECT ^(TOK_SELEXPR TOK_ALLCOLREF)) + ) ^(TOK_FROM ^(TOK_SUBQUERY {$selectStatement.tree} {adaptor.create(Identifier, generateUnionAlias())} ) ) - ^(TOK_INSERT - ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) - ^(TOK_SELECT ^(TOK_SELEXPR TOK_ALLCOLREF)) - ) ) -> {$selectStatement.tree} ; @@ -2127,7 +2133,8 @@ regularBody[boolean topLevel] singleSelectStatement : selectClause - fromClause? + fromClause[false]? + lateralView? whereClause? groupByClause? havingClause? @@ -2136,26 +2143,17 @@ singleSelectStatement distributeByClause? sortByClause? window_clause? - limitClause? -> ^(TOK_QUERY fromClause? ^(TOK_INSERT ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) - selectClause whereClause? groupByClause? havingClause? orderByClause? clusterByClause? - distributeByClause? sortByClause? window_clause? limitClause?)) + limitClause? -> + ^(TOK_QUERY ^(TOK_INSERT ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) + selectClause lateralView? whereClause? groupByClause? havingClause? orderByClause? clusterByClause? + distributeByClause? sortByClause? window_clause? limitClause?) fromClause?) ; -selectStatementWithCTE - : - (w=withClause)? - selectStatement[true] { - if ($w.tree != null) { - adaptor.addChild($selectStatement.tree, $w.tree); - } - } - -> selectStatement - ; - -body +singleInsertSelectStatement : insertClause selectClause + fromClause[false]? lateralView? whereClause? groupByClause? @@ -2165,25 +2163,23 @@ body distributeByClause? sortByClause? window_clause? - limitClause? -> ^(TOK_INSERT insertClause + limitClause? -> + ^(TOK_QUERY ^(TOK_INSERT insertClause selectClause lateralView? whereClause? groupByClause? havingClause? orderByClause? clusterByClause? - distributeByClause? sortByClause? window_clause? limitClause?) - | - selectClause - lateralView? - whereClause? - groupByClause? - havingClause? - orderByClause? - clusterByClause? - distributeByClause? - sortByClause? - window_clause? - limitClause? -> ^(TOK_INSERT ^(TOK_DESTINATION ^(TOK_DIR TOK_TMP_FILE)) - selectClause lateralView? whereClause? groupByClause? havingClause? orderByClause? clusterByClause? - distributeByClause? sortByClause? window_clause? limitClause?) + distributeByClause? sortByClause? window_clause? limitClause?) fromClause?) ; +selectStatementWithCTE + : + (w=withClause)? + selectStatement[true] { + if ($w.tree != null) { + adaptor.addChild($selectStatement.tree, $w.tree); + } + } + -> selectStatement + ; + insertClause @init { pushMsg("insert clause", state); } @after { popMsg(state); } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java index 908db1e..9f9a36c 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java @@ -38,6 +38,8 @@ private static final Log LOG = LogFactory.getLog("hive.ql.parse.QB"); + private ASTNode source; + private final int numJoins = 0; private final int numGbys = 0; private int numSels = 0; @@ -55,6 +57,8 @@ private CreateTableDesc tblDesc = null; // table descriptor of the final private CreateTableDesc localDirectoryDesc = null ; + private String baseAlias; + // used by PTFs /* * This map maintains the PTFInvocationSpec for each PTF chain invocation in this QB. @@ -366,4 +370,14 @@ public QBSubQuery getHavingClauseSubQueryPredicate() { return havingClauseSubQueryPredicate; } + public String getBaseAlias() { + return baseAlias; + } + + public void setBaseAlias(String baseAlias) { + if (this.baseAlias != null) { + throw new IllegalStateException("never"); + } + this.baseAlias = baseAlias.toLowerCase(); + } } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/QBParseInfo.java ql/src/java/org/apache/hadoop/hive/ql/parse/QBParseInfo.java index 911ac8a..10a8237 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/QBParseInfo.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/QBParseInfo.java @@ -90,6 +90,7 @@ private final HashMap> aliasToLateralViews; private final HashMap destToLateralView; + private final HashMap> destToSources; /* Order by clause */ private final HashMap destToOrderby; @@ -113,6 +114,7 @@ public QBParseInfo(String alias, boolean isSubQ) { nameToSample = new HashMap(); exprToColumnAlias = new HashMap(); destToLateralView = new HashMap(); + destToSources = new HashMap>(); destToSelExpr = new LinkedHashMap(); destToWhereExpr = new HashMap(); destToGroupby = new HashMap(); @@ -224,6 +226,14 @@ public void setDestForClause(String clause, ASTNode ast) { nameToDest.put(clause, ast); } + public void addSourceForDest(String clause, String source) { + List sources = destToSources.get(clause); + if (sources == null) { + destToSources.put(clause, sources = new ArrayList()); + } + sources.add(source.toLowerCase()); + } + /** * Set the Cluster By AST for the clause. * @@ -558,6 +568,14 @@ public tableSpec getTableSpec() { return destToLateralView; } + public HashMap> getDestToSources() { + return destToSources; + } + + public List getSourcesForDest(String dest) { + return destToSources.get(dest); + } + protected static enum ClauseType { CLUSTER_BY_CLAUSE, DISTRIBUTE_BY_CLAUSE, diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/QBSubQuery.java ql/src/java/org/apache/hadoop/hive/ql/parse/QBSubQuery.java index d398c88..62cc012 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/QBSubQuery.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/QBSubQuery.java @@ -513,7 +513,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, String outerQueryAlias, Set outerQryAliases) throws SemanticException { - ASTNode selectClause = (ASTNode) subQueryAST.getChild(1).getChild(1); + ASTNode selectClause = (ASTNode) subQueryAST.getChild(0).getChild(1); int selectExprStart = 0; if ( selectClause.getChild(0).getType() == HiveParser.TOK_HINTLIST ) { @@ -567,7 +567,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, selectClause.getChildCount() - selectExprStart > 1 ) { subQueryAST.setOrigin(originalSQASTOrigin); throw new SemanticException(ErrorMsg.INVALID_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, "SubQuery can contain only 1 item in Select List.")); + subQueryAST.getChild(1), "SubQuery can contain only 1 item in Select List.")); } containsAggregationExprs = false; @@ -597,7 +597,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, containsAggregationExprs && groupbyAddedToSQ ) { throw new SemanticException(ErrorMsg.INVALID_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, + subQueryAST.getChild(1), "An Exists predicate on SubQuery with implicit Aggregation(no Group By clause) " + "cannot be rewritten. (predicate will always return true).")); } @@ -605,7 +605,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, containsAggregationExprs && groupbyAddedToSQ ) { throw new SemanticException(ErrorMsg.INVALID_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, + subQueryAST.getChild(1), "A Not Exists predicate on SubQuery with implicit Aggregation(no Group By clause) " + "cannot be rewritten. (predicate will always return false).")); } @@ -615,7 +615,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, */ if ( containsWindowing && hasCorrelation ) { throw new SemanticException(ErrorMsg.UNSUPPORTED_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, "Correlated Sub Queries cannot contain Windowing clauses.")); + subQueryAST.getChild(1), "Correlated Sub Queries cannot contain Windowing clauses.")); } /* @@ -626,7 +626,7 @@ void validateAndRewriteAST(RowResolver outerQueryRR, operator.getType() == SubQueryType.NOT_EXISTS ) && !hasCorrelation ) { throw new SemanticException(ErrorMsg.INVALID_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, "For Exists/Not Exists operator SubQuery must be Correlated.")); + subQueryAST.getChild(1), "For Exists/Not Exists operator SubQuery must be Correlated.")); } } @@ -754,7 +754,7 @@ String getNextCorrExprAlias() { private void rewrite(RowResolver parentQueryRR, boolean forHavingClause, String outerQueryAlias) throws SemanticException { - ASTNode selectClause = (ASTNode) subQueryAST.getChild(1).getChild(1); + ASTNode selectClause = (ASTNode) subQueryAST.getChild(0).getChild(1); ASTNode whereClause = SubQueryUtils.subQueryWhere(subQueryAST); if ( whereClause == null ) { @@ -877,8 +877,8 @@ private void rewrite(RowResolver parentQueryRR, */ private ASTNode getSubQueryGroupByAST() { ASTNode groupBy = null; - if ( subQueryAST.getChild(1).getChildCount() > 3 && - subQueryAST.getChild(1).getChild(3).getType() == HiveParser.TOK_GROUPBY ) { + if ( subQueryAST.getChild(0).getChildCount() > 3 && + subQueryAST.getChild(0).getChild(3).getType() == HiveParser.TOK_GROUPBY ) { groupBy = (ASTNode) subQueryAST.getChild(1).getChild(3); } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index 7a71ec7..4029e0c 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -532,7 +532,7 @@ public static String generateErrorMessage(ASTNode ast, String message) { * * @return the alias of the table */ - private String processTable(QB qb, ASTNode tabref) throws SemanticException { + private String processTable(QB qb, ASTNode tabref, String dest) throws SemanticException { // For each table reference get the table name // and the alias (if alias is not present, the table name // is used as an alias) @@ -646,6 +646,7 @@ private String processTable(QB qb, ASTNode tabref) throws SemanticException { qb.addAlias(alias); qb.getParseInfo().setSrcForAlias(alias, tableTree); + qb.getParseInfo().addSourceForDest(dest, alias); unparseTranslator.addTableNameTranslation(tableTree, SessionState.get().getCurrentDatabase()); if (aliasIndex != 0) { @@ -666,7 +667,7 @@ private void assertCombineInputFormat(Tree numerator, String message) throws Sem } } - private String processSubQuery(QB qb, ASTNode subq) throws SemanticException { + private String processSubQuery(QB qb, ASTNode subq, String dest) throws SemanticException { // This is a subquery and must have an alias if (subq.getChildCount() != 2) { @@ -689,6 +690,8 @@ private String processSubQuery(QB qb, ASTNode subq) throws SemanticException { qb.setSubqAlias(alias, qbexpr); qb.addAlias(alias); + qb.getParseInfo().addSourceForDest(dest, alias); + unparseTranslator.addIdentifierTranslation((ASTNode) subq.getChild(1)); return alias; @@ -809,7 +812,7 @@ private boolean isJoinToken(ASTNode node) { * @throws SemanticException */ @SuppressWarnings("nls") - private void processJoin(QB qb, ASTNode join) throws SemanticException { + private String processJoin(QB qb, ASTNode join, String dest) throws SemanticException { int numChildren = join.getChildCount(); if ((numChildren != 2) && (numChildren != 3) && join.getToken().getType() != HiveParser.TOK_UNIQUEJOIN) { @@ -820,12 +823,12 @@ private void processJoin(QB qb, ASTNode join) throws SemanticException { for (int num = 0; num < numChildren; num++) { ASTNode child = (ASTNode) join.getChild(num); if (child.getToken().getType() == HiveParser.TOK_TABREF) { - processTable(qb, child); + processTable(qb, child, dest); } else if (child.getToken().getType() == HiveParser.TOK_SUBQUERY) { - processSubQuery(qb, child); + processSubQuery(qb, child, dest); } else if (child.getToken().getType() == HiveParser.TOK_PTBLFUNCTION) { queryProperties.setHasPTF(true); - processPTF(qb, child); + processPTF(qb, child, dest); PTFInvocationSpec ptfInvocationSpec = qb.getPTFInvocationSpec(child); String inputAlias = ptfInvocationSpec == null ? null : ptfInvocationSpec.getFunction().getAlias();; @@ -843,9 +846,10 @@ private void processJoin(QB qb, ASTNode join) throws SemanticException { throw new SemanticException(ErrorMsg.LATERAL_VIEW_WITH_JOIN .getMsg(join)); } else if (isJoinToken(child)) { - processJoin(qb, child); + processJoin(qb, child, dest); } } + return null; } /** @@ -859,7 +863,7 @@ private void processJoin(QB qb, ASTNode join) throws SemanticException { * @throws SemanticException */ - private String processLateralView(QB qb, ASTNode lateralView) + private String processLateralView(QB qb, ASTNode lateralView, String dest) throws SemanticException { int numChildren = lateralView.getChildCount(); @@ -870,14 +874,14 @@ private String processLateralView(QB qb, ASTNode lateralView) switch (next.getToken().getType()) { case HiveParser.TOK_TABREF: - alias = processTable(qb, next); + alias = processTable(qb, next, dest); break; case HiveParser.TOK_SUBQUERY: - alias = processSubQuery(qb, next); + alias = processSubQuery(qb, next, dest); break; case HiveParser.TOK_LATERAL_VIEW: case HiveParser.TOK_LATERAL_VIEW_OUTER: - alias = processLateralView(qb, next); + alias = processLateralView(qb, next, dest); break; default: throw new SemanticException(ErrorMsg.LATERAL_VIEW_INVALID_CHILD @@ -962,6 +966,7 @@ public boolean doPhase1(ASTNode ast, QB qb, Phase1Ctx ctx_1) break; case HiveParser.TOK_FROM: + case HiveParser.TOK_FROM_BASE: int child_count = ast.getChildCount(); if (child_count != 1) { throw new SemanticException(generateErrorMessage(ast, @@ -970,20 +975,28 @@ public boolean doPhase1(ASTNode ast, QB qb, Phase1Ctx ctx_1) // Check if this is a subquery / lateral view ASTNode frm = (ASTNode) ast.getChild(0); + + String alias = null; if (frm.getToken().getType() == HiveParser.TOK_TABREF) { - processTable(qb, frm); + alias = processTable(qb, frm, ctx_1.dest); } else if (frm.getToken().getType() == HiveParser.TOK_SUBQUERY) { - processSubQuery(qb, frm); + alias = processSubQuery(qb, frm, ctx_1.dest); } else if (frm.getToken().getType() == HiveParser.TOK_LATERAL_VIEW || frm.getToken().getType() == HiveParser.TOK_LATERAL_VIEW_OUTER) { - processLateralView(qb, frm); + alias = processLateralView(qb, frm, ctx_1.dest); } else if (isJoinToken(frm)) { queryProperties.setHasJoin(true); - processJoin(qb, frm); + alias = processJoin(qb, frm, ctx_1.dest); qbp.setJoinExpr(frm); - }else if(frm.getToken().getType() == HiveParser.TOK_PTBLFUNCTION){ + if (qbp.getGroupByForClause(ctx_1.dest) != null) { + queryProperties.setHasJoinFollowedByGroupBy(true); + } + } else if (frm.getToken().getType() == HiveParser.TOK_PTBLFUNCTION) { queryProperties.setHasPTF(true); - processPTF(qb, frm); + alias = processPTF(qb, frm, ctx_1.dest); + } + if (ast.getType() == HiveParser.TOK_FROM_BASE && alias != null) { + qb.setBaseAlias(alias.toLowerCase()); } break; @@ -1042,9 +1055,6 @@ public boolean doPhase1(ASTNode ast, QB qb, Phase1Ctx ctx_1) // Get the groupby aliases - these are aliased to the entries in the // select list queryProperties.setHasGroupBy(true); - if (qbp.getJoinExpr() != null) { - queryProperties.setHasJoinFollowedByGroupBy(true); - } if (qbp.getSelForClause(ctx_1.dest).getToken().getType() == HiveParser.TOK_SELECTDI) { throw new SemanticException(generateErrorMessage(ast, ErrorMsg.SELECT_DISTINCT_WITH_GROUPBY.getMsg())); @@ -2253,7 +2263,7 @@ private Operator genFilterPlan(ASTNode searchCond, QB qb, Operator input, sqRR.getColumnInfos().size() - subQuery.getNumOfCorrelationExprsAddedToSQSelect() > 1 ) { throw new SemanticException(ErrorMsg.INVALID_SUBQUERY_EXPRESSION.getMsg( - subQueryAST, "SubQuery can contain only 1 item in Select List.")); + subQueryAST.getChild(1), "SubQuery can contain only 1 item in Select List.")); } /* @@ -7893,7 +7903,7 @@ private Operator insertSelectAllPlanForGroupBy(Operator input) // Return the common distinct expression // There should be more than 1 destination, with group bys in all of them. - private List getCommonDistinctExprs(QB qb, Operator input) { + private List getCommonDistinctExprs(QB qb, Map> inputs) { QBParseInfo qbp = qb.getParseInfo(); // If a grouping set aggregation is present, common processing is not possible if (!qbp.getDestCubes().isEmpty() || !qbp.getDestRollups().isEmpty() @@ -7901,6 +7911,16 @@ private Operator insertSelectAllPlanForGroupBy(Operator input) return null; } + // confirm single operator sourced (todo) + Operator input = null; + for (Map.Entry> entry : inputs.entrySet()) { + if (input == null) { + input = entry.getValue(); + } else if (input != entry.getValue()) { + return null; + } + } + RowResolver inputRR = opParseCtx.get(input).getRowResolver(); TreeSet ks = new TreeSet(); ks.addAll(qbp.getClauseNames()); @@ -7913,7 +7933,8 @@ private Operator insertSelectAllPlanForGroupBy(Operator input) List oldList = null; List oldASTList = null; - for (String dest : ks) { + for (Map.Entry> entry : inputs.entrySet()) { + String dest = entry.getKey(); // If a filter is present, common processing is not possible if (qbp.getWhrForClause(dest) != null) { return null; @@ -7958,10 +7979,8 @@ private Operator insertSelectAllPlanForGroupBy(Operator input) return oldASTList; } - private Operator createCommonReduceSink(QB qb, Operator input) + private Operator createCommonReduceSink(QB qb, List distExprs, Operator input) throws SemanticException { - // Go over all the tables and extract the common distinct key - List distExprs = getCommonDistinctExprs(qb, input); QBParseInfo qbp = qb.getParseInfo(); TreeSet ks = new TreeSet(); @@ -8054,7 +8073,7 @@ private Operator createCommonReduceSink(QB qb, Operator input) // group by and distinct keys and no clause appears in more than one list. Returns a list of the // lists of clauses. private List> getCommonGroupByDestGroups(QB qb, - Map> inputs) throws SemanticException { + Map> inputs) throws SemanticException { QBParseInfo qbp = qb.getParseInfo(); @@ -8221,16 +8240,14 @@ private boolean distinctExprsExists(QB qb) { } @SuppressWarnings("nls") - private Operator genBodyPlan(QB qb, Operator input, Map aliasToOpInfo) - throws SemanticException { + private Operator genBodyPlan(QB qb, Map> inputs, + Map aliasToOpInfo) throws SemanticException { QBParseInfo qbp = qb.getParseInfo(); - TreeSet ks = new TreeSet(qbp.getClauseNames()); - Map> inputs = createInputForDests(qb, input, ks); // For multi-group by with the same distinct, we ignore all user hints // currently. It doesnt matter whether he has asked to do // map-side aggregation or not. Map side aggregation is turned off - List commonDistinctExprs = getCommonDistinctExprs(qb, input); + List commonDistinctExprs = getCommonDistinctExprs(qb, inputs); // Consider a query like: // @@ -8246,22 +8263,21 @@ private Operator genBodyPlan(QB qb, Operator input, Map aliasT boolean optimizeMultiGroupBy = commonDistinctExprs != null && conf.getBoolVar(HiveConf.ConfVars.HIVE_OPTIMIZE_MULTI_GROUPBY_COMMON_DISTINCTS); - Operator curr = input; - // if there is a single distinct, optimize that. Spray initially by the // distinct key, // no computation at the mapper. Have multiple group by operators at the // reducer - and then // proceed if (optimizeMultiGroupBy) { - curr = createCommonReduceSink(qb, input); + Operator curr = inputs.values().iterator().next(); + curr = createCommonReduceSink(qb, commonDistinctExprs, curr); RowResolver currRR = opParseCtx.get(curr).getRowResolver(); // create a forward operator - input = putOpInsertMap(OperatorFactory.getAndMakeChild(new ForwardDesc(), + Operator input = putOpInsertMap(OperatorFactory.getAndMakeChild(new ForwardDesc(), new RowSchema(currRR.getColumnInfos()), curr), currRR); - for (String dest : ks) { + for (String dest : inputs.keySet()) { curr = input; curr = genGroupByPlan2MRMultiGroupBy(dest, qb, curr); curr = genSelectPlan(dest, qb, curr); @@ -8272,86 +8288,89 @@ private Operator genBodyPlan(QB qb, Operator input, Map aliasT } curr = genFileSinkPlan(dest, qb, curr); } - } else { - List> commonGroupByDestGroups = null; + return curr; + } - // If we can put multiple group bys in a single reducer, determine suitable groups of - // expressions, otherwise treat all the expressions as a single group - if (conf.getBoolVar(HiveConf.ConfVars.HIVEMULTIGROUPBYSINGLEREDUCER)) { - try { - commonGroupByDestGroups = getCommonGroupByDestGroups(qb, inputs); - } catch (SemanticException e) { - LOG.error("Failed to group clauses by common spray keys.", e); - } - } + List> commonGroupByDestGroups = null; - if (commonGroupByDestGroups == null) { - commonGroupByDestGroups = new ArrayList>(); - commonGroupByDestGroups.add(new ArrayList(ks)); + // If we can put multiple group bys in a single reducer, determine suitable groups of + // expressions, otherwise treat all the expressions as a single group + if (conf.getBoolVar(HiveConf.ConfVars.HIVEMULTIGROUPBYSINGLEREDUCER)) { + try { + commonGroupByDestGroups = getCommonGroupByDestGroups(qb, inputs); + } catch (SemanticException e) { + LOG.error("Failed to group clauses by common spray keys.", e); } + } - if (!commonGroupByDestGroups.isEmpty()) { + if (commonGroupByDestGroups == null) { + commonGroupByDestGroups = new ArrayList>(); + commonGroupByDestGroups.add(new ArrayList(inputs.keySet())); + } - // Iterate over each group of subqueries with the same group by/distinct keys - for (List commonGroupByDestGroup : commonGroupByDestGroups) { - if (commonGroupByDestGroup.isEmpty()) { - continue; - } + if (commonGroupByDestGroups.isEmpty()) { + return null; + } + + Operator curr = null; + // Iterate over each group of subqueries with the same group by/distinct keys + for (List commonGroupByDestGroup : commonGroupByDestGroups) { + if (commonGroupByDestGroup.isEmpty()) { + continue; + } - String firstDest = commonGroupByDestGroup.get(0); - input = inputs.get(firstDest); - - // Constructs a standard group by plan if: - // There is no other subquery with the same group by/distinct keys or - // (There are no aggregations in a representative query for the group and - // There is no group by in that representative query) or - // The data is skewed or - // The conf variable used to control combining group bys into a single reducer is false - if (commonGroupByDestGroup.size() == 1 || - (qbp.getAggregationExprsForClause(firstDest).size() == 0 && + String firstDest = commonGroupByDestGroup.get(0); + + // Constructs a standard group by plan if: + // There is no other subquery with the same group by/distinct keys or + // (There are no aggregations in a representative query for the group and + // There is no group by in that representative query) or + // The data is skewed or + // The conf variable used to control combining group bys into a single reducer is false + if (commonGroupByDestGroup.size() == 1 || + (qbp.getAggregationExprsForClause(firstDest).size() == 0 && getGroupByForClause(qbp, firstDest).size() == 0) || - conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW) || - !conf.getBoolVar(HiveConf.ConfVars.HIVEMULTIGROUPBYSINGLEREDUCER)) { + conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW) || + !conf.getBoolVar(HiveConf.ConfVars.HIVEMULTIGROUPBYSINGLEREDUCER)) { - // Go over all the destination tables - for (String dest : commonGroupByDestGroup) { - curr = inputs.get(dest); + // Go over all the destination tables + for (String dest : commonGroupByDestGroup) { + curr = inputs.get(dest); - if (qbp.getWhrForClause(dest) != null) { - ASTNode whereExpr = qb.getParseInfo().getWhrForClause(dest); - curr = genFilterPlan((ASTNode) whereExpr.getChild(0), qb, curr, aliasToOpInfo, false); - } + if (qbp.getWhrForClause(dest) != null) { + ASTNode whereExpr = qb.getParseInfo().getWhrForClause(dest); + curr = genFilterPlan((ASTNode) whereExpr.getChild(0), qb, curr, aliasToOpInfo, false); + } - if (qbp.getAggregationExprsForClause(dest).size() != 0 - || getGroupByForClause(qbp, dest).size() > 0) { - // multiple distincts is not supported with skew in data - if (conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW) && - qbp.getDistinctFuncExprsForClause(dest).size() > 1) { - throw new SemanticException(ErrorMsg.UNSUPPORTED_MULTIPLE_DISTINCTS. - getMsg()); - } - // insert a select operator here used by the ColumnPruner to reduce - // the data to shuffle - curr = insertSelectAllPlanForGroupBy(curr); - if (conf.getBoolVar(HiveConf.ConfVars.HIVEMAPSIDEAGGREGATE)) { - if (!conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW)) { - curr = genGroupByPlanMapAggrNoSkew(dest, qb, curr); - } else { - curr = genGroupByPlanMapAggr2MR(dest, qb, curr); - } - } else if (conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW)) { - curr = genGroupByPlan2MR(dest, qb, curr); - } else { - curr = genGroupByPlan1MR(dest, qb, curr); - } + if (qbp.getAggregationExprsForClause(dest).size() != 0 + || getGroupByForClause(qbp, dest).size() > 0) { + // multiple distincts is not supported with skew in data + if (conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW) && + qbp.getDistinctFuncExprsForClause(dest).size() > 1) { + throw new SemanticException(ErrorMsg.UNSUPPORTED_MULTIPLE_DISTINCTS. + getMsg()); + } + // insert a select operator here used by the ColumnPruner to reduce + // the data to shuffle + curr = insertSelectAllPlanForGroupBy(curr); + if (conf.getBoolVar(HiveConf.ConfVars.HIVEMAPSIDEAGGREGATE)) { + if (!conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW)) { + curr = genGroupByPlanMapAggrNoSkew(dest, qb, curr); + } else { + curr = genGroupByPlanMapAggr2MR(dest, qb, curr); } - - curr = genPostGroupByBodyPlan(curr, dest, qb, aliasToOpInfo); + } else if (conf.getBoolVar(HiveConf.ConfVars.HIVEGROUPBYSKEW)) { + curr = genGroupByPlan2MR(dest, qb, curr); + } else { + curr = genGroupByPlan1MR(dest, qb, curr); } - } else { - curr = genGroupByPlan1ReduceMultiGBY(commonGroupByDestGroup, qb, input, aliasToOpInfo); } + + curr = genPostGroupByBodyPlan(curr, dest, qb, aliasToOpInfo); } + } else { + curr = inputs.get(firstDest); + curr = genGroupByPlan1ReduceMultiGBY(commonGroupByDestGroup, qb, curr, aliasToOpInfo); } } @@ -9061,13 +9080,14 @@ private void setupStats(TableScanDesc tsDesc, QBParseInfo qbp, Table tab, String } } - private Operator genPlan(QBExpr qbexpr) throws SemanticException { + private Operator genPlan(QBExpr qbexpr, String baseAlias, Operator baseOp) + throws SemanticException { if (qbexpr.getOpcode() == QBExpr.Opcode.NULLOP) { - return genPlan(qbexpr.getQB()); + return genPlan(qbexpr.getQB(), baseAlias, baseOp); } if (qbexpr.getOpcode() == QBExpr.Opcode.UNION) { - Operator qbexpr1Ops = genPlan(qbexpr.getQBExpr1()); - Operator qbexpr2Ops = genPlan(qbexpr.getQBExpr2()); + Operator qbexpr1Ops = genPlan(qbexpr.getQBExpr1(), baseAlias, baseOp); + Operator qbexpr2Ops = genPlan(qbexpr.getQBExpr2(), baseAlias, baseOp); return genUnionPlan(qbexpr.getAlias(), qbexpr.getQBExpr1().getAlias(), qbexpr1Ops, qbexpr.getQBExpr2().getAlias(), qbexpr2Ops); @@ -9077,32 +9097,49 @@ private Operator genPlan(QBExpr qbexpr) throws SemanticException { @SuppressWarnings("nls") public Operator genPlan(QB qb) throws SemanticException { + return genPlan(qb, null, null); + } + + @SuppressWarnings("nls") + public Operator genPlan(QB qb, String baseAlias, Operator baseOp) throws SemanticException { + + if (qb.getBaseAlias() != null) { + baseAlias = qb.getBaseAlias(); + QBExpr qbexpr = qb.getSubqForAlias(baseAlias); + String tabName = qb.getTabNameForAlias(baseAlias); + if (qbexpr != null) { + baseOp = genPlan(qbexpr, null, null); + qbexpr.setAlias(baseAlias); + } else { + baseOp = genTablePlan(baseAlias, qb); + } + } // First generate all the opInfos for the elements in the from clause Map aliasToOpInfo = new HashMap(); + if (baseAlias != null) { + aliasToOpInfo.put(baseAlias, baseOp); + } // Recurse over the subqueries to fill the subquery part of the plan for (String alias : qb.getSubqAliases()) { + if (alias.equals(qb.getBaseAlias())) { + continue; + } QBExpr qbexpr = qb.getSubqForAlias(alias); - aliasToOpInfo.put(alias, genPlan(qbexpr)); + aliasToOpInfo.put(alias, genPlan(qbexpr, baseAlias, baseOp)); qbexpr.setAlias(alias); } // Recurse over all the source tables for (String alias : qb.getTabAliases()) { + if (alias.equals(qb.getBaseAlias())) { + continue; + } Operator op = genTablePlan(alias, qb); aliasToOpInfo.put(alias, op); } - if (aliasToOpInfo.isEmpty()) { - qb.getMetaData().setSrcForAlias(DUMMY_TABLE, getDummyTable()); - TableScanOperator op = (TableScanOperator) genTablePlan(DUMMY_TABLE, qb); - op.getConf().setRowLimit(1); - qb.addAlias(DUMMY_TABLE); - qb.setTabAlias(DUMMY_TABLE, DUMMY_TABLE); - aliasToOpInfo.put(DUMMY_TABLE, op); - } - Operator srcOpInfo = null; Operator lastPTFOp = null; @@ -9168,15 +9205,36 @@ public Operator genPlan(QB qb) throws SemanticException { pushJoinFilters(qb, qb.getQbJoinTree(), aliasToOpInfo); srcOpInfo = genJoinPlan(qb, aliasToOpInfo); } else { - // Now if there are more than 1 sources then we have a join case - // later we can extend this to the union all case as well - srcOpInfo = aliasToOpInfo.values().iterator().next(); // with ptfs, there maybe more (note for PTFChains: // 1 ptf invocation may entail multiple PTF operators) srcOpInfo = lastPTFOp != null ? lastPTFOp : srcOpInfo; } - Operator bodyOpInfo = genBodyPlan(qb, srcOpInfo, aliasToOpInfo); + QBParseInfo qbp = qb.getParseInfo(); + if (qbp.getClauseNames().isEmpty()) { + assert aliasToOpInfo.size() == 1; + return aliasToOpInfo.values().iterator().next(); + } + + Map> inputs = new LinkedHashMap>(); + for (String dest : new TreeSet(qbp.getClauseNames())) { + List sources = qbp.getSourcesForDest(dest); + Operator sourceOp = srcOpInfo; + if (sourceOp == null) { + if (sources == null || sources.isEmpty()) { + sourceOp = baseOp; + } else if (sources.size() == 1) { + sourceOp = aliasToOpInfo.get(sources.get(0)); + } + } + if (sourceOp != null) { + sourceOp = genLateralViewPlanForDest(dest, qb, sourceOp); + } else { + sourceOp = createDummyOp(qb); + } + inputs.put(dest, sourceOp); + } + Operator bodyOpInfo = genBodyPlan(qb, inputs, aliasToOpInfo); if (LOG.isDebugEnabled()) { LOG.debug("Created Plan for Query Block " + qb.getId()); @@ -9186,6 +9244,15 @@ public Operator genPlan(QB qb) throws SemanticException { return bodyOpInfo; } + private Operator createDummyOp(QB qb) throws SemanticException { + qb.getMetaData().setSrcForAlias(DUMMY_TABLE, getDummyTable()); + TableScanOperator op = (TableScanOperator) genTablePlan(DUMMY_TABLE, qb); + op.getConf().setRowLimit(1); + qb.addAlias(DUMMY_TABLE); + qb.setTabAlias(DUMMY_TABLE, DUMMY_TABLE); + return op; + } + private Table getDummyTable() throws SemanticException { Path dummyPath = createDummyFile(); Table desc = new Table(DUMMY_DATABASE, DUMMY_TABLE); @@ -9573,7 +9640,7 @@ private void saveViewDefinition() throws SemanticException { int derivedColCount = derivedSchema.size(); if (explicitColCount != derivedColCount) { throw new SemanticException(generateErrorMessage( - viewSelect, + (ASTNode) viewSelect.getChild(1), ErrorMsg.VIEW_COL_MISMATCH.getMsg())); } } @@ -10624,7 +10691,7 @@ public void setQB(QB qb) { * - For a SubQuery: set the source to the alias returned by processSubQuery * - For a PTF invocation: recursively call processPTFChain. */ - private PTFInputSpec processPTFSource(QB qb, ASTNode inputNode) throws SemanticException{ + private PTFInputSpec processPTFSource(QB qb, ASTNode inputNode, String dest) throws SemanticException{ PTFInputSpec qInSpec = null; int type = inputNode.getType(); @@ -10632,19 +10699,19 @@ private PTFInputSpec processPTFSource(QB qb, ASTNode inputNode) throws SemanticE switch(type) { case HiveParser.TOK_TABREF: - alias = processTable(qb, inputNode); + alias = processTable(qb, inputNode, dest); qInSpec = new PTFQueryInputSpec(); ((PTFQueryInputSpec)qInSpec).setType(PTFQueryInputType.TABLE); ((PTFQueryInputSpec)qInSpec).setSource(alias); break; case HiveParser.TOK_SUBQUERY: - alias = processSubQuery(qb, inputNode); + alias = processSubQuery(qb, inputNode, dest); qInSpec = new PTFQueryInputSpec(); ((PTFQueryInputSpec)qInSpec).setType(PTFQueryInputType.SUBQUERY); ((PTFQueryInputSpec)qInSpec).setSource(alias); break; case HiveParser.TOK_PTBLFUNCTION: - qInSpec = processPTFChain(qb, inputNode); + qInSpec = processPTFChain(qb, inputNode, dest); break; default: throw new SemanticException(generateErrorMessage(inputNode, @@ -10662,7 +10729,7 @@ private PTFInputSpec processPTFSource(QB qb, ASTNode inputNode) throws SemanticE * - a partitionTableFunctionSource can be a tableReference, a SubQuery or another * PTF invocation. */ - private PartitionedTableFunctionSpec processPTFChain(QB qb, ASTNode ptf) + private PartitionedTableFunctionSpec processPTFChain(QB qb, ASTNode ptf, String dest) throws SemanticException{ int child_count = ptf.getChildCount(); if (child_count < 2) { @@ -10694,7 +10761,9 @@ private PartitionedTableFunctionSpec processPTFChain(QB qb, ASTNode ptf) * input */ ASTNode inputNode = (ASTNode) ptf.getChild(inputIdx); - ptfSpec.setInput(processPTFSource(qb, inputNode)); + PTFInputSpec input = processPTFSource(qb, inputNode, dest); + qb.getParseInfo().addSourceForDest(dest, input.getQueryInputName()); + ptfSpec.setInput(input); int argStartIdx = inputIdx + 1; @@ -10727,9 +10796,9 @@ private PartitionedTableFunctionSpec processPTFChain(QB qb, ASTNode ptf) * ^(TOK_PTBLFUNCTION name partitionTableFunctionSource partitioningSpec? arguments*) * - setup a PTFInvocationSpec for this top level PTF invocation. */ - private void processPTF(QB qb, ASTNode ptf) throws SemanticException{ + private String processPTF(QB qb, ASTNode ptf, String dest) throws SemanticException{ - PartitionedTableFunctionSpec ptfSpec = processPTFChain(qb, ptf); + PartitionedTableFunctionSpec ptfSpec = processPTFChain(qb, ptf, dest); if ( ptfSpec.getAlias() != null ) { qb.addAlias(ptfSpec.getAlias()); @@ -10738,6 +10807,8 @@ private void processPTF(QB qb, ASTNode ptf) throws SemanticException{ PTFInvocationSpec spec = new PTFInvocationSpec(); spec.setFunction(ptfSpec); qb.addPTFNodeToSpec(ptf, spec); + + return null; } private void handleQueryWindowClauses(QB qb, Phase1Ctx ctx_1, ASTNode node) diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryDiagnostic.java ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryDiagnostic.java index 57f9432..3483077 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryDiagnostic.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryDiagnostic.java @@ -76,7 +76,7 @@ public String getRewrittenQuery() { ASTNode sqAST = subQuery.getSubQueryAST(); if (whereClause != null) { - ASTNode whereAST = (ASTNode) sqAST.getChild(1).getChild(2); + ASTNode whereAST = (ASTNode) sqAST.getChild(0).getChild(2); stream.replace(subQuery.getAlias(), whereAST.getTokenStartIndex(), whereAST.getTokenStopIndex(), @@ -84,14 +84,14 @@ public String getRewrittenQuery() { } if (selectClauseAdditions != null) { - ASTNode selectClause = (ASTNode) sqAST.getChild(1).getChild(1); + ASTNode selectClause = (ASTNode) sqAST.getChild(0).getChild(1); stream.insertAfter(subQuery.getAlias(), selectClause.getTokenStopIndex(), selectClauseAdditions); } if (gByClauseAdditions != null) { if (!addGroupByClause) { - ASTNode groupBy = (ASTNode) sqAST.getChild(1).getChild(3); + ASTNode groupBy = (ASTNode) sqAST.getChild(0).getChild(3); stream.insertAfter(subQuery.getAlias(), groupBy.getTokenStopIndex(), gByClauseAdditions); } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryUtils.java ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryUtils.java index 089ad78..8af978a 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SubQueryUtils.java @@ -273,7 +273,7 @@ static int checkAggOrWindowing(ASTNode expressionTree) throws SemanticException static List getTableAliasesInSubQuery(QBSubQuery sq) { List aliases = new ArrayList(); - ASTNode joinAST = (ASTNode) sq.getSubQueryAST().getChild(0); + ASTNode joinAST = (ASTNode) sq.getSubQueryAST().getChild(1); getTableAliasesInSubQuery((ASTNode) joinAST.getChild(0), aliases); return aliases; } @@ -319,9 +319,9 @@ else if ( type == HiveParser.TOK_TABLE_OR_COL ) { } static ASTNode subQueryWhere(ASTNode subQueryAST) { - if ( subQueryAST.getChild(1).getChildCount() > 2 && - subQueryAST.getChild(1).getChild(2).getType() == HiveParser.TOK_WHERE ) { - return (ASTNode) subQueryAST.getChild(1).getChild(2); + if ( subQueryAST.getChild(0).getChildCount() > 2 && + subQueryAST.getChild(0).getChild(2).getType() == HiveParser.TOK_WHERE ) { + return (ASTNode) subQueryAST.getChild(0).getChild(2); } return null; } @@ -468,21 +468,21 @@ static void setOriginDeep(ASTNode node, ASTNodeOrigin origin) { * The AST tree for this is: * * ^(TOK_QUERY - * ^(TOK FROM - * ^(TOK_SUBQUERY - * {the input SubQuery, with correlation removed} - * subQueryAlias - * ) - * ) * ^(TOK_INSERT * ^(TOK_DESTINATION...) * ^(TOK_SELECT * ^(TOK_SELECTEXPR {ast tree for count *} * ) * ^(TOK_WHERE - * {is null check for joining column} + * {is null check for joining column} * ) * ) + * ^(TOK FROM + * ^(TOK_SUBQUERY + * {the input SubQuery, with correlation removed} + * subQueryAlias + * ) + * ) * ) */ static ASTNode buildNotInNullCheckQuery(ASTNode subQueryAST, @@ -494,14 +494,15 @@ static ASTNode buildNotInNullCheckQuery(ASTNode subQueryAST, subQueryAST = (ASTNode) ParseDriver.adaptor.dupTree(subQueryAST); ASTNode qry = (ASTNode) ParseDriver.adaptor.create(HiveParser.TOK_QUERY, "TOK_QUERY"); - - qry.addChild(buildNotInNullCheckFrom(subQueryAST, subQueryAlias)); + ASTNode insertAST = buildNotInNullCheckInsert(); qry.addChild(insertAST); insertAST.addChild(buildNotInNullCheckSelect(cntAlias)); - insertAST.addChild(buildNotInNullCheckWhere(subQueryAST, + insertAST.addChild(buildNotInNullCheckWhere(subQueryAST, subQueryAlias, corrExprs, sqRR)); - + + qry.addChild(buildNotInNullCheckFrom(subQueryAST, subQueryAlias)); + return qry; } @@ -581,7 +582,7 @@ static ASTNode buildNotInNullCheckWhere(ASTNode subQueryAST, List corrExprs, RowResolver sqRR) { - ASTNode sqSelect = (ASTNode) subQueryAST.getChild(1).getChild(1); + ASTNode sqSelect = (ASTNode) subQueryAST.getChild(0).getChild(1); ASTNode selExpr = (ASTNode) sqSelect.getChild(0); String colAlias = null; diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java index e44f5ae..aa62148 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java @@ -1174,7 +1174,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, } ASTNode expr = (ASTNode) nd; - ASTNode sqNode = (ASTNode) expr.getParent().getChild(1); + ASTNode sqNode = (ASTNode) expr.getParent().getChild(0); /* * Restriction.1.h :: SubQueries only supported in the SQL Where Clause. */ diff --git ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBSubQuery.java ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBSubQuery.java index 8b36f21..64b109f 100644 --- ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBSubQuery.java +++ ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBSubQuery.java @@ -70,9 +70,9 @@ public void testExtractSubQueries() throws Exception { Assert.assertEquals(sqs.size(), 1); ASTNode sq = sqs.get(0); - Assert.assertEquals(sq.toStringTree(), - "(TOK_SUBQUERY_EXPR (TOK_SUBQUERY_OP in) (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) s1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TABLE_OR_COL key))) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL s1) key) '9') (> (. (TOK_TABLE_OR_COL s1) value) '9'))))) (. (TOK_TABLE_OR_COL src) key))" - ); + Assert.assertEquals( + "(TOK_SUBQUERY_EXPR (TOK_SUBQUERY_OP in) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TABLE_OR_COL key))) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL s1) key) '9') (> (. (TOK_TABLE_OR_COL s1) value) '9')))) (TOK_FROM (TOK_TABREF (TOK_TABNAME src) s1))) (. (TOK_TABLE_OR_COL src) key))", + sq.toStringTree()); } @Test @@ -88,8 +88,8 @@ public void testExtractConjuncts() throws Exception { SubQueryUtils.extractConjuncts((ASTNode) sqWhere.getChild(0), conjuncts); Assert.assertEquals(conjuncts.size(), 2); - Assert.assertEquals(conjuncts.get(0).toStringTree(), "(> (. (TOK_TABLE_OR_COL s1) key) '9')"); - Assert.assertEquals(conjuncts.get(1).toStringTree(), "(> (. (TOK_TABLE_OR_COL s1) value) '9')"); + Assert.assertEquals("(> (. (TOK_TABLE_OR_COL s1) key) '9')", conjuncts.get(0).toStringTree()); + Assert.assertEquals("(> (. (TOK_TABLE_OR_COL s1) value) '9')", conjuncts.get(1).toStringTree()); } @Test @@ -100,7 +100,7 @@ public void testRewriteOuterQueryWhere() throws Exception { ASTNode sq = sqs.get(0); ASTNode newWhere = SubQueryUtils.rewriteParentQueryWhere((ASTNode) where.getChild(0), sq); - Assert.assertEquals(newWhere.toStringTree(), "(= 1 1)"); + Assert.assertEquals("(= 1 1)", newWhere.toStringTree()); } @Test @@ -111,7 +111,7 @@ public void testRewriteOuterQueryWhere2() throws Exception { ASTNode sq = sqs.get(0); ASTNode newWhere = SubQueryUtils.rewriteParentQueryWhere((ASTNode) where.getChild(0), sq); - Assert.assertEquals(newWhere.toStringTree(), "(> (TOK_TABLE_OR_COL value) '9')"); + Assert.assertEquals("(> (TOK_TABLE_OR_COL value) '9')", newWhere.toStringTree()); } @Test @@ -125,11 +125,11 @@ public void testCheckAggOrWindowing() throws Exception { } private ASTNode where(ASTNode qry) { - return (ASTNode) qry.getChild(1).getChild(2); + return (ASTNode) qry.getChild(0).getChild(2); } private ASTNode select(ASTNode qry) { - return (ASTNode) qry.getChild(1).getChild(1); + return (ASTNode) qry.getChild(0).getChild(1); } } diff --git ql/src/test/queries/clientpositive/multi_insert_subquery.q ql/src/test/queries/clientpositive/multi_insert_subquery.q new file mode 100644 index 0000000..0af1307 --- /dev/null +++ ql/src/test/queries/clientpositive/multi_insert_subquery.q @@ -0,0 +1,16 @@ +create table src_10 as select * from src tablesample(10 rows); + +create table src_lv1 (key string, value string); +create table src_lv2 (key string, value string); + +explain extended +from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C; + +from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C; + +select * from src_lv1; +select * from src_lv2; diff --git ql/src/test/results/clientnegative/create_view_failure3.q.out ql/src/test/results/clientnegative/create_view_failure3.q.out index 5ddbdb6..a2fd0b4 100644 --- ql/src/test/results/clientnegative/create_view_failure3.q.out +++ ql/src/test/results/clientnegative/create_view_failure3.q.out @@ -2,4 +2,4 @@ PREHOOK: query: DROP VIEW xxx13 PREHOOK: type: DROPVIEW POSTHOOK: query: DROP VIEW xxx13 POSTHOOK: type: DROPVIEW -FAILED: SemanticException 5:16 The number of columns produced by the SELECT clause does not match the number of column names specified by CREATE VIEW. Error encountered near token 'key' +FAILED: SemanticException 5:16 The number of columns produced by the SELECT clause does not match the number of column names specified by CREATE VIEW. Error encountered near token 'src' diff --git ql/src/test/results/clientnegative/subquery_exists_implicit_gby.q.out ql/src/test/results/clientnegative/subquery_exists_implicit_gby.q.out index 4830c00..faecb63 100644 --- ql/src/test/results/clientnegative/subquery_exists_implicit_gby.q.out +++ ql/src/test/results/clientnegative/subquery_exists_implicit_gby.q.out @@ -1,4 +1,4 @@ -FAILED: SemanticException Line 7:7 Invalid SubQuery expression 'key' in definition of SubQuery sq_1 [ +FAILED: SemanticException Line 7:7 Invalid SubQuery expression 'a' in definition of SubQuery sq_1 [ exists (select count(*) from src a diff --git ql/src/test/results/clientnegative/subquery_in_groupby.q.out ql/src/test/results/clientnegative/subquery_in_groupby.q.out index 809bb0a..44d69c6 100644 --- ql/src/test/results/clientnegative/subquery_in_groupby.q.out +++ ql/src/test/results/clientnegative/subquery_in_groupby.q.out @@ -1 +1 @@ -FAILED: SemanticException [Error 10249]: Line 5:37 Unsupported SubQuery Expression ''9'': Currently SubQuery expressions are only allowed as Where Clause predicates +FAILED: SemanticException [Error 10249]: Line 5:17 Unsupported SubQuery Expression 'in': Currently SubQuery expressions are only allowed as Where Clause predicates diff --git ql/src/test/results/clientnegative/subquery_in_select.q.out ql/src/test/results/clientnegative/subquery_in_select.q.out index 3d74132..c345dee 100644 --- ql/src/test/results/clientnegative/subquery_in_select.q.out +++ ql/src/test/results/clientnegative/subquery_in_select.q.out @@ -1 +1 @@ -FAILED: SemanticException [Error 10249]: Line 4:35 Unsupported SubQuery Expression ''9'': Currently SubQuery expressions are only allowed as Where Clause predicates +FAILED: SemanticException [Error 10249]: Line 4:15 Unsupported SubQuery Expression 'in': Currently SubQuery expressions are only allowed as Where Clause predicates diff --git ql/src/test/results/clientnegative/subquery_multiple_cols_in_select.q.out ql/src/test/results/clientnegative/subquery_multiple_cols_in_select.q.out index 7a16bae..86a9f1b 100644 --- ql/src/test/results/clientnegative/subquery_multiple_cols_in_select.q.out +++ ql/src/test/results/clientnegative/subquery_multiple_cols_in_select.q.out @@ -1 +1,3 @@ -FAILED: SemanticException [Error 10250]: Line 6:14 Invalid SubQuery expression 'key': SubQuery can contain only 1 item in Select List. +FAILED: SemanticException Line 0:-1 Invalid SubQuery expression 's1' in definition of SubQuery sq_1 [ +src.key in (select * from src s1 where s1.key > '9') +] used as sq_1 at Line 6:14: SubQuery can contain only 1 item in Select List. diff --git ql/src/test/results/clientnegative/subquery_nested_subquery.q.out ql/src/test/results/clientnegative/subquery_nested_subquery.q.out index 4a7dab6..addb415 100644 --- ql/src/test/results/clientnegative/subquery_nested_subquery.q.out +++ ql/src/test/results/clientnegative/subquery_nested_subquery.q.out @@ -26,6 +26,6 @@ POSTHOOK: query: CREATE TABLE part( POSTHOOK: type: CREATETABLE POSTHOOK: Output: database:default POSTHOOK: Output: default@part -FAILED: SemanticException Line 5:53 Unsupported SubQuery Expression 'p_name' in definition of SubQuery sq_1 [ +FAILED: SemanticException Line 5:53 Unsupported SubQuery Expression 'z' in definition of SubQuery sq_1 [ x.p_name in (select y.p_name from part y where exists (select z.p_name from part z where y.p_name = z.p_name)) ] used as sq_1 at Line 5:15: Nested SubQuery expressions are not supported. diff --git ql/src/test/results/clientnegative/subquery_notexists_implicit_gby.q.out ql/src/test/results/clientnegative/subquery_notexists_implicit_gby.q.out index 74422af..ad00267 100644 --- ql/src/test/results/clientnegative/subquery_notexists_implicit_gby.q.out +++ ql/src/test/results/clientnegative/subquery_notexists_implicit_gby.q.out @@ -1,4 +1,4 @@ -FAILED: SemanticException Line 7:7 Invalid SubQuery expression 'key' in definition of SubQuery sq_1 [ +FAILED: SemanticException Line 7:7 Invalid SubQuery expression 'a' in definition of SubQuery sq_1 [ exists (select sum(1) from src a diff --git ql/src/test/results/clientnegative/subquery_subquery_chain.q.out ql/src/test/results/clientnegative/subquery_subquery_chain.q.out index 448bfb2..8c62a4d 100644 --- ql/src/test/results/clientnegative/subquery_subquery_chain.q.out +++ ql/src/test/results/clientnegative/subquery_subquery_chain.q.out @@ -1 +1 @@ -FAILED: SemanticException [Error 10249]: Line 5:59 Unsupported SubQuery Expression 'key': Only 1 SubQuery expression is supported. +FAILED: SemanticException Line 0:-1 Unsupported SubQuery Expression 'src': Only 1 SubQuery expression is supported. diff --git ql/src/test/results/clientnegative/subquery_windowing_corr.q.out ql/src/test/results/clientnegative/subquery_windowing_corr.q.out index c54f54e..b7e68e0 100644 --- ql/src/test/results/clientnegative/subquery_windowing_corr.q.out +++ ql/src/test/results/clientnegative/subquery_windowing_corr.q.out @@ -40,7 +40,7 @@ POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/part_tiny.txt' overwri POSTHOOK: type: LOAD #### A masked pattern was here #### POSTHOOK: Output: default@part -FAILED: SemanticException Line 9:8 Unsupported SubQuery Expression '1' in definition of SubQuery sq_1 [ +FAILED: SemanticException Line 9:8 Unsupported SubQuery Expression 'b' in definition of SubQuery sq_1 [ a.p_size in (select first_value(p_size) over(partition by p_mfgr order by p_size) from part b diff --git ql/src/test/results/clientnegative/uniquejoin3.q.out ql/src/test/results/clientnegative/uniquejoin3.q.out index e10a47b..f2bdc18 100644 --- ql/src/test/results/clientnegative/uniquejoin3.q.out +++ ql/src/test/results/clientnegative/uniquejoin3.q.out @@ -1 +1 @@ -FAILED: ParseException line 1:54 required (...)+ loop did not match anything at input 'JOIN' in statement +FAILED: ParseException line 1:54 cannot recognize input near 'JOIN' 'src' 'c' in statement diff --git ql/src/test/results/clientpositive/alter_partition_coltype.q.out ql/src/test/results/clientpositive/alter_partition_coltype.q.out index 25eb48c..b9040a2 100644 --- ql/src/test/results/clientpositive/alter_partition_coltype.q.out +++ ql/src/test/results/clientpositive/alter_partition_coltype.q.out @@ -92,10 +92,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alter_coltype TOK_INSERT TOK_DESTINATION TOK_DIR @@ -109,6 +105,10 @@ TOK_QUERY TOK_TABLE_OR_COL dt '100' + TOK_FROM + TOK_TABREF + TOK_TABNAME + alter_coltype STAGE DEPENDENCIES: @@ -321,10 +321,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alter_coltype TOK_INSERT TOK_DESTINATION TOK_DIR @@ -338,6 +334,10 @@ TOK_QUERY TOK_TABLE_OR_COL ts '6.30' + TOK_FROM + TOK_TABREF + TOK_TABNAME + alter_coltype STAGE DEPENDENCIES: @@ -477,10 +477,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alter_coltype TOK_INSERT TOK_DESTINATION TOK_DIR @@ -499,6 +495,10 @@ TOK_QUERY TOK_TABLE_OR_COL dt 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + alter_coltype STAGE DEPENDENCIES: @@ -687,10 +687,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alter_coltype TOK_INSERT TOK_DESTINATION TOK_DIR @@ -713,6 +709,10 @@ TOK_QUERY TOK_ISNOTNULL TOK_TABLE_OR_COL dt + TOK_FROM + TOK_TABREF + TOK_TABNAME + alter_coltype STAGE DEPENDENCIES: @@ -988,10 +988,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alterdynamic_part_table TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1010,6 +1006,10 @@ TOK_QUERY TOK_TABLE_OR_COL partcol2 '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + alterdynamic_part_table STAGE DEPENDENCIES: @@ -1114,10 +1114,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - alterdynamic_part_table TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1146,6 +1142,10 @@ TOK_QUERY TOK_TABLE_OR_COL partcol2 '__HIVE_DEFAULT_PARTITION__' + TOK_FROM + TOK_TABREF + TOK_TABNAME + alterdynamic_part_table STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/analyze_table_null_partition.q.out ql/src/test/results/clientpositive/analyze_table_null_partition.q.out index c7254d1..0530cfe 100644 --- ql/src/test/results/clientpositive/analyze_table_null_partition.q.out +++ ql/src/test/results/clientpositive/analyze_table_null_partition.q.out @@ -95,10 +95,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - test2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -106,6 +102,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + test2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_join_reordering_values.q.out ql/src/test/results/clientpositive/auto_join_reordering_values.q.out index 03cdcb5..e37e3a6 100644 --- ql/src/test/results/clientpositive/auto_join_reordering_values.q.out +++ ql/src/test/results/clientpositive/auto_join_reordering_values.q.out @@ -87,6 +87,23 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + dim_pay_date + date + TOK_SELEXPR + . + TOK_TABLE_OR_COL + deal + dealid + TOK_LIMIT + 5 TOK_FROM TOK_JOIN TOK_JOIN @@ -148,23 +165,6 @@ TOK_QUERY TOK_TABLE_OR_COL orderpayment userid - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - dim_pay_date - date - TOK_SELEXPR - . - TOK_TABLE_OR_COL - deal - dealid - TOK_LIMIT - 5 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out index 5a7f174..028e187 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out @@ -112,6 +112,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -131,14 +139,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -339,6 +339,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -358,14 +366,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -566,6 +566,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -585,14 +593,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_11.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_11.q.out index 8372a63..a480541 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_11.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_11.q.out @@ -108,6 +108,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -127,14 +135,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -470,6 +470,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -489,14 +497,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -826,6 +826,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -845,19 +858,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -1147,6 +1147,20 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_JOIN @@ -1180,20 +1194,6 @@ TOK_QUERY TOK_TABLE_OR_COL c key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_12.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_12.q.out index eaf6c15..fdd9272 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_12.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_12.q.out @@ -146,6 +146,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_JOIN @@ -193,14 +201,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out index 72242bb..744539a 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out @@ -92,6 +92,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -111,14 +119,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -321,6 +321,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -340,14 +348,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out index 35fa02f..329a294 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out @@ -92,6 +92,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -111,14 +119,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -270,6 +270,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -289,14 +297,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -448,6 +448,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -467,14 +475,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out index 4fea70d..42eaab9 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out @@ -108,6 +108,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -127,14 +135,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -286,6 +286,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -305,14 +313,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -464,6 +464,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -483,14 +491,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out index 30a8436..866614f 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out @@ -73,6 +73,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -92,14 +100,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -245,6 +245,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -264,14 +272,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -417,6 +417,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -436,14 +444,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out index abb1db4..91b7db4 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out @@ -125,6 +125,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -144,14 +152,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -354,6 +354,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -373,14 +381,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -583,6 +583,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -602,14 +610,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out index 9226dc6..1c38432 100644 --- ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out +++ ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out @@ -125,6 +125,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -144,14 +152,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -354,6 +354,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -373,14 +381,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -585,6 +585,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -604,14 +612,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/binary_output_format.q.out ql/src/test/results/clientpositive/binary_output_format.q.out index b42222d..26b74a9 100644 --- ql/src/test/results/clientpositive/binary_output_format.q.out +++ ql/src/test/results/clientpositive/binary_output_format.q.out @@ -55,10 +55,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -86,6 +82,10 @@ TOK_QUERY TOK_TABCOL mydata TOK_STRING + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket1.q.out ql/src/test/results/clientpositive/bucket1.q.out index 6737a85..746fabc 100644 --- ql/src/test/results/clientpositive/bucket1.q.out +++ ql/src/test/results/clientpositive/bucket1.q.out @@ -21,10 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -33,6 +29,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket2.q.out ql/src/test/results/clientpositive/bucket2.q.out index a945d8e..560af6f 100644 --- ql/src/test/results/clientpositive/bucket2.q.out +++ ql/src/test/results/clientpositive/bucket2.q.out @@ -21,10 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -33,6 +29,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket3.q.out ql/src/test/results/clientpositive/bucket3.q.out index e81ef66..ff19b1f 100644 --- ql/src/test/results/clientpositive/bucket3.q.out +++ ql/src/test/results/clientpositive/bucket3.q.out @@ -21,10 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -37,6 +33,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket4.q.out ql/src/test/results/clientpositive/bucket4.q.out index ddaad98..aa0b1eb 100644 --- ql/src/test/results/clientpositive/bucket4.q.out +++ ql/src/test/results/clientpositive/bucket4.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -29,6 +25,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket5.q.out ql/src/test/results/clientpositive/bucket5.q.out index 7432c7d..ebd509e 100644 --- ql/src/test/results/clientpositive/bucket5.q.out +++ ql/src/test/results/clientpositive/bucket5.q.out @@ -33,37 +33,39 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME src - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - bucketed_table - TOK_SELECT - TOK_SELEXPR + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + bucketed_table + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + unbucketed_table + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_CLUSTERBY TOK_TABLE_OR_COL key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - unbucketed_table - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_CLUSTERBY - TOK_TABLE_OR_COL - key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket_map_join_1.q.out ql/src/test/results/clientpositive/bucket_map_join_1.q.out index b194a2b..bf5fec8 100644 --- ql/src/test/results/clientpositive/bucket_map_join_1.q.out +++ ql/src/test/results/clientpositive/bucket_map_join_1.q.out @@ -59,6 +59,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -88,19 +101,6 @@ TOK_QUERY TOK_TABLE_OR_COL b value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucket_map_join_2.q.out ql/src/test/results/clientpositive/bucket_map_join_2.q.out index 07c8878..93d9927 100644 --- ql/src/test/results/clientpositive/bucket_map_join_2.q.out +++ ql/src/test/results/clientpositive/bucket_map_join_2.q.out @@ -59,6 +59,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -88,19 +101,6 @@ TOK_QUERY TOK_TABLE_OR_COL b value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_1.q.out ql/src/test/results/clientpositive/bucketcontext_1.q.out index 0ea304d..59701d0 100644 --- ql/src/test/results/clientpositive/bucketcontext_1.q.out +++ ql/src/test/results/clientpositive/bucketcontext_1.q.out @@ -106,6 +106,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -125,19 +138,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -428,6 +428,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -447,19 +460,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_2.q.out ql/src/test/results/clientpositive/bucketcontext_2.q.out index e961f06..1458521 100644 --- ql/src/test/results/clientpositive/bucketcontext_2.q.out +++ ql/src/test/results/clientpositive/bucketcontext_2.q.out @@ -90,6 +90,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -109,19 +122,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -412,6 +412,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -431,19 +444,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_3.q.out ql/src/test/results/clientpositive/bucketcontext_3.q.out index 1de6211..1be6971 100644 --- ql/src/test/results/clientpositive/bucketcontext_3.q.out +++ ql/src/test/results/clientpositive/bucketcontext_3.q.out @@ -90,6 +90,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -109,19 +122,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -409,6 +409,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -428,19 +441,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_4.q.out ql/src/test/results/clientpositive/bucketcontext_4.q.out index f0e369d..73513dc 100644 --- ql/src/test/results/clientpositive/bucketcontext_4.q.out +++ ql/src/test/results/clientpositive/bucketcontext_4.q.out @@ -106,6 +106,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -125,19 +138,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -425,6 +425,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -444,19 +457,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_5.q.out ql/src/test/results/clientpositive/bucketcontext_5.q.out index 085cce9..5dc85c1 100644 --- ql/src/test/results/clientpositive/bucketcontext_5.q.out +++ ql/src/test/results/clientpositive/bucketcontext_5.q.out @@ -71,6 +71,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -90,19 +103,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -291,6 +291,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -310,19 +323,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_6.q.out ql/src/test/results/clientpositive/bucketcontext_6.q.out index 209be0a..997ffc5 100644 --- ql/src/test/results/clientpositive/bucketcontext_6.q.out +++ ql/src/test/results/clientpositive/bucketcontext_6.q.out @@ -89,6 +89,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -108,19 +121,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -362,6 +362,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -381,19 +394,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_7.q.out ql/src/test/results/clientpositive/bucketcontext_7.q.out index 11054d6..e8b521d 100644 --- ql/src/test/results/clientpositive/bucketcontext_7.q.out +++ ql/src/test/results/clientpositive/bucketcontext_7.q.out @@ -123,6 +123,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -142,19 +155,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -493,6 +493,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -512,19 +525,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketcontext_8.q.out ql/src/test/results/clientpositive/bucketcontext_8.q.out index e992702..e1b9a16 100644 --- ql/src/test/results/clientpositive/bucketcontext_8.q.out +++ ql/src/test/results/clientpositive/bucketcontext_8.q.out @@ -123,6 +123,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -142,19 +155,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -493,6 +493,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -512,19 +525,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin1.q.out ql/src/test/results/clientpositive/bucketmapjoin1.q.out index 1746aba..89e1e37 100644 --- ql/src/test/results/clientpositive/bucketmapjoin1.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin1.q.out @@ -37,25 +37,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -88,6 +69,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -164,25 +164,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -215,6 +196,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -383,25 +383,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -435,6 +416,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -930,25 +930,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -982,6 +963,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin10.q.out ql/src/test/results/clientpositive/bucketmapjoin10.q.out index c77f417..3bafb93 100644 --- ql/src/test/results/clientpositive/bucketmapjoin10.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin10.q.out @@ -143,6 +143,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -176,19 +189,6 @@ TOK_QUERY TOK_TABLE_OR_COL b part - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin11.q.out ql/src/test/results/clientpositive/bucketmapjoin11.q.out index c85ba92..2dd9210 100644 --- ql/src/test/results/clientpositive/bucketmapjoin11.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin11.q.out @@ -153,6 +153,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -186,19 +199,6 @@ TOK_QUERY TOK_TABLE_OR_COL b part - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -543,6 +543,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -586,19 +599,6 @@ TOK_QUERY TOK_TABLE_OR_COL b part - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin12.q.out ql/src/test/results/clientpositive/bucketmapjoin12.q.out index 9e8c327..d5473b1 100644 --- ql/src/test/results/clientpositive/bucketmapjoin12.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin12.q.out @@ -112,6 +112,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -145,19 +158,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -408,6 +408,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -441,19 +454,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin13.q.out ql/src/test/results/clientpositive/bucketmapjoin13.q.out index 760a2b8..6137981 100644 --- ql/src/test/results/clientpositive/bucketmapjoin13.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin13.q.out @@ -85,6 +85,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -104,19 +117,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -410,6 +410,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -436,19 +449,6 @@ TOK_QUERY a part '2' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -708,6 +708,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -727,19 +740,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -1001,6 +1001,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -1020,19 +1033,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin2.q.out ql/src/test/results/clientpositive/bucketmapjoin2.q.out index 729f3f4..0c3ac70 100644 --- ql/src/test/results/clientpositive/bucketmapjoin2.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin2.q.out @@ -103,32 +103,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - and - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key - = - . - TOK_TABLE_OR_COL - b - ds - "2008-04-08" TOK_INSERT TOK_DESTINATION TOK_TAB @@ -155,6 +129,32 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + and + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key + = + . + TOK_TABLE_OR_COL + b + ds + "2008-04-08" STAGE DEPENDENCIES: @@ -655,32 +655,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - and - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key - = - . - TOK_TABLE_OR_COL - b - ds - "2008-04-08" TOK_INSERT TOK_DESTINATION TOK_TAB @@ -707,6 +681,32 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + and + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key + = + . + TOK_TABLE_OR_COL + b + ds + "2008-04-08" STAGE DEPENDENCIES: @@ -1266,25 +1266,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1311,6 +1292,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin3.q.out ql/src/test/results/clientpositive/bucketmapjoin3.q.out index f63bb57..57e9cb8 100644 --- ql/src/test/results/clientpositive/bucketmapjoin3.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin3.q.out @@ -127,6 +127,32 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + bucketmapjoin_tmp_result + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value TOK_FROM TOK_JOIN TOK_TABREF @@ -160,32 +186,6 @@ TOK_QUERY a ds "2008-04-08" - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - bucketmapjoin_tmp_result - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value STAGE DEPENDENCIES: @@ -686,6 +686,32 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + bucketmapjoin_tmp_result + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + a + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value TOK_FROM TOK_JOIN TOK_TABREF @@ -719,32 +745,6 @@ TOK_QUERY a ds "2008-04-08" - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - bucketmapjoin_tmp_result - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - a - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin4.q.out ql/src/test/results/clientpositive/bucketmapjoin4.q.out index a58af3a..e7277dd 100644 --- ql/src/test/results/clientpositive/bucketmapjoin4.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin4.q.out @@ -127,25 +127,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -172,6 +153,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -613,25 +613,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -658,6 +639,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin5.q.out ql/src/test/results/clientpositive/bucketmapjoin5.q.out index 08ad318..e80cadf 100644 --- ql/src/test/results/clientpositive/bucketmapjoin5.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin5.q.out @@ -177,25 +177,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -222,6 +203,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -724,25 +724,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -769,6 +750,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin7.q.out ql/src/test/results/clientpositive/bucketmapjoin7.q.out index 8cc001e..d21b5ee 100644 --- ql/src/test/results/clientpositive/bucketmapjoin7.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin7.q.out @@ -69,6 +69,28 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_LIMIT + 1 TOK_FROM TOK_JOIN TOK_TABREF @@ -102,28 +124,6 @@ TOK_QUERY b ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_LIMIT - 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin8.q.out ql/src/test/results/clientpositive/bucketmapjoin8.q.out index e573f59..030880b 100644 --- ql/src/test/results/clientpositive/bucketmapjoin8.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin8.q.out @@ -77,6 +77,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -110,19 +123,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -382,6 +382,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -415,19 +428,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin9.q.out ql/src/test/results/clientpositive/bucketmapjoin9.q.out index c6f94f5..6fad6ec 100644 --- ql/src/test/results/clientpositive/bucketmapjoin9.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin9.q.out @@ -85,6 +85,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -118,19 +131,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -415,6 +415,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -448,19 +461,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin_negative.q.out ql/src/test/results/clientpositive/bucketmapjoin_negative.q.out index fa2692e..8ed1b8d 100644 --- ql/src/test/results/clientpositive/bucketmapjoin_negative.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin_negative.q.out @@ -78,25 +78,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -130,6 +111,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin_negative2.q.out ql/src/test/results/clientpositive/bucketmapjoin_negative2.q.out index 7810b12..bd4a776 100644 --- ql/src/test/results/clientpositive/bucketmapjoin_negative2.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin_negative2.q.out @@ -87,25 +87,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part_2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -132,6 +113,25 @@ TOK_QUERY TOK_TABLE_OR_COL b value + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part_2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/bucketmapjoin_negative3.q.out ql/src/test/results/clientpositive/bucketmapjoin_negative3.q.out index b2abb45..925cc6b 100644 --- ql/src/test/results/clientpositive/bucketmapjoin_negative3.q.out +++ ql/src/test/results/clientpositive/bucketmapjoin_negative3.q.out @@ -151,6 +151,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -180,18 +192,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -350,6 +350,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -379,18 +391,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -551,6 +551,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -575,18 +587,6 @@ TOK_QUERY TOK_TABLE_OR_COL R key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -737,6 +737,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -766,18 +778,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -928,6 +928,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -957,18 +969,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -1119,6 +1119,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -1148,18 +1160,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -1310,6 +1310,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -1339,18 +1351,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -1501,6 +1501,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -1530,18 +1542,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -1692,6 +1692,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + R + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_TABREF @@ -1721,18 +1733,6 @@ TOK_QUERY TOK_TABLE_OR_COL R value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - R - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/combine2.q.out ql/src/test/results/clientpositive/combine2.q.out index 13b09bd..f72dbc1 100644 --- ql/src/test/results/clientpositive/combine2.q.out +++ ql/src/test/results/clientpositive/combine2.q.out @@ -167,10 +167,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - combine2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -185,6 +181,10 @@ TOK_QUERY TOK_ISNOTNULL TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + combine2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/combine2_hadoop20.q.out ql/src/test/results/clientpositive/combine2_hadoop20.q.out index e7d3c26..1244a45 100644 --- ql/src/test/results/clientpositive/combine2_hadoop20.q.out +++ ql/src/test/results/clientpositive/combine2_hadoop20.q.out @@ -164,10 +164,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - combine2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -182,6 +178,10 @@ TOK_QUERY TOK_ISNOTNULL TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + combine2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ctas.q.out ql/src/test/results/clientpositive/ctas.q.out index 3c3d22b..a05f177 100644 --- ql/src/test/results/clientpositive/ctas.q.out +++ ql/src/test/results/clientpositive/ctas.q.out @@ -684,10 +684,6 @@ TOK_CREATETABLE TOK_FILEFORMAT_GENERIC textfile TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -708,6 +704,10 @@ TOK_CREATETABLE value TOK_LIMIT 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ctas_hadoop20.q.out ql/src/test/results/clientpositive/ctas_hadoop20.q.out index 63428b5..d1a8492 100644 --- ql/src/test/results/clientpositive/ctas_hadoop20.q.out +++ ql/src/test/results/clientpositive/ctas_hadoop20.q.out @@ -679,10 +679,6 @@ TOK_CREATETABLE '\012' TOK_TBLTEXTFILE TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -703,6 +699,10 @@ TOK_CREATETABLE value TOK_LIMIT 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/disable_merge_for_bucketing.q.out ql/src/test/results/clientpositive/disable_merge_for_bucketing.q.out index cc38864..78fbca1 100644 --- ql/src/test/results/clientpositive/disable_merge_for_bucketing.q.out +++ ql/src/test/results/clientpositive/disable_merge_for_bucketing.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -29,6 +25,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/dynamic_partition_skip_default.q.out ql/src/test/results/clientpositive/dynamic_partition_skip_default.q.out index f2bebe4..a377fec 100644 --- ql/src/test/results/clientpositive/dynamic_partition_skip_default.q.out +++ ql/src/test/results/clientpositive/dynamic_partition_skip_default.q.out @@ -49,10 +49,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - dynamic_part_table TOK_INSERT TOK_DESTINATION TOK_DIR @@ -71,6 +67,10 @@ TOK_QUERY TOK_TABLE_OR_COL partcol2 '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + dynamic_part_table STAGE DEPENDENCIES: @@ -175,10 +175,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - dynamic_part_table TOK_INSERT TOK_DESTINATION TOK_DIR @@ -197,6 +193,10 @@ TOK_QUERY TOK_TABLE_OR_COL partcol2 '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + dynamic_part_table STAGE DEPENDENCIES: @@ -301,10 +301,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - dynamic_part_table TOK_INSERT TOK_DESTINATION TOK_DIR @@ -333,6 +329,10 @@ TOK_QUERY TOK_TABLE_OR_COL partcol2 '__HIVE_DEFAULT_PARTITION__' + TOK_FROM + TOK_TABREF + TOK_TABNAME + dynamic_part_table STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/explain_logical.q.out ql/src/test/results/clientpositive/explain_logical.q.out index e803b51..91093c7 100644 --- ql/src/test/results/clientpositive/explain_logical.q.out +++ ql/src/test/results/clientpositive/explain_logical.q.out @@ -61,10 +61,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -85,6 +81,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart LOGICAL PLAN: @@ -135,25 +135,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - subq1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -169,6 +150,25 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + subq1 LOGICAL PLAN: @@ -223,14 +223,17 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -242,11 +245,11 @@ TOK_QUERY TOK_SELEXPR TOK_TABLE_OR_COL value - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME - srcpart + src + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -263,14 +266,11 @@ TOK_QUERY TOK_ISNOTNULL TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart S1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF LOGICAL PLAN: @@ -315,25 +315,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - src - S1 - TOK_TABREF - TOK_TABNAME - srcpart - S2 - = - . - TOK_TABLE_OR_COL - S1 - key - . - TOK_TABLE_OR_COL - S2 - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -354,6 +335,25 @@ TOK_QUERY TOK_ISNOTNULL TOK_TABLE_OR_COL ds + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + src + S1 + TOK_TABREF + TOK_TABNAME + srcpart + S2 + = + . + TOK_TABLE_OR_COL + S1 + key + . + TOK_TABLE_OR_COL + S2 + key LOGICAL PLAN: @@ -419,10 +419,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - V1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -430,6 +426,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + V1 LOGICAL PLAN: @@ -456,10 +456,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - V2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -467,6 +463,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + V2 LOGICAL PLAN: @@ -493,10 +493,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - V3 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -504,6 +500,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + V3 LOGICAL PLAN: @@ -571,10 +571,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - V4 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -582,6 +578,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + V4 LOGICAL PLAN: @@ -691,10 +691,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - V5 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -702,6 +698,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + V5 LOGICAL PLAN: @@ -731,14 +731,36 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s1 + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s1 + cnt + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s2 + value + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + s1 + key TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -756,6 +778,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src s1 TOK_TABREF TOK_TABNAME @@ -770,32 +796,6 @@ TOK_QUERY TOK_TABLE_OR_COL s2 key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s1 - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s1 - cnt - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s2 - value - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - s1 - key LOGICAL PLAN: diff --git ql/src/test/results/clientpositive/filter_join_breaktask.q.out ql/src/test/results/clientpositive/filter_join_breaktask.q.out index 3deb166..d954a75 100644 --- ql/src/test/results/clientpositive/filter_join_breaktask.q.out +++ ql/src/test/results/clientpositive/filter_join_breaktask.q.out @@ -31,6 +31,21 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + f + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + g + value TOK_FROM TOK_JOIN TOK_JOIN @@ -113,21 +128,6 @@ TOK_QUERY m value '' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - f - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - g - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_map_ppr.q.out ql/src/test/results/clientpositive/groupby_map_ppr.q.out index c9a5b37..9833187 100644 --- ql/src/test/results/clientpositive/groupby_map_ppr.q.out +++ ql/src/test/results/clientpositive/groupby_map_ppr.q.out @@ -27,39 +27,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 - TOK_SELEXPR - TOK_FUNCTIONDI - count - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - value - 5 - TOK_SELEXPR - TOK_FUNCTION - concat + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR TOK_FUNCTION substr . @@ -68,8 +48,9 @@ TOK_QUERY key 1 1 - TOK_FUNCTION - sum + TOK_SELEXPR + TOK_FUNCTIONDI + count TOK_FUNCTION substr . @@ -77,22 +58,42 @@ TOK_QUERY src value 5 - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_GROUPBY - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 + TOK_SELEXPR + TOK_FUNCTION + concat + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 + TOK_FUNCTION + sum + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_WHERE + = + . + TOK_TABLE_OR_COL + src + ds + '2008-04-08' + TOK_GROUPBY + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_map_ppr_multi_distinct.q.out ql/src/test/results/clientpositive/groupby_map_ppr_multi_distinct.q.out index fa2cb0c..4f2168b 100644 --- ql/src/test/results/clientpositive/groupby_map_ppr_multi_distinct.q.out +++ ql/src/test/results/clientpositive/groupby_map_ppr_multi_distinct.q.out @@ -27,39 +27,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 - TOK_SELEXPR - TOK_FUNCTIONDI - count - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - value - 5 - TOK_SELEXPR - TOK_FUNCTION - concat + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR TOK_FUNCTION substr . @@ -68,7 +48,38 @@ TOK_QUERY key 1 1 + TOK_SELEXPR + TOK_FUNCTIONDI + count + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_SELEXPR TOK_FUNCTION + concat + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 + TOK_FUNCTION + sum + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_SELEXPR + TOK_FUNCTIONDI sum TOK_FUNCTION substr @@ -77,39 +88,29 @@ TOK_QUERY src value 5 - TOK_SELEXPR - TOK_FUNCTIONDI - sum - TOK_FUNCTION - substr + TOK_SELEXPR + TOK_FUNCTIONDI + count . TOK_TABLE_OR_COL src value - 5 - TOK_SELEXPR - TOK_FUNCTIONDI - count + TOK_WHERE + = . TOK_TABLE_OR_COL src - value - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_GROUPBY - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 + ds + '2008-04-08' + TOK_GROUPBY + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_ppr.q.out ql/src/test/results/clientpositive/groupby_ppr.q.out index 9c072c7..ba80fca 100644 --- ql/src/test/results/clientpositive/groupby_ppr.q.out +++ ql/src/test/results/clientpositive/groupby_ppr.q.out @@ -23,39 +23,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 - TOK_SELEXPR - TOK_FUNCTIONDI - count - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - value - 5 - TOK_SELEXPR - TOK_FUNCTION - concat + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR TOK_FUNCTION substr . @@ -64,8 +44,9 @@ TOK_QUERY key 1 1 - TOK_FUNCTION - sum + TOK_SELEXPR + TOK_FUNCTIONDI + count TOK_FUNCTION substr . @@ -73,22 +54,42 @@ TOK_QUERY src value 5 - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_GROUPBY - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 + TOK_SELEXPR + TOK_FUNCTION + concat + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 + TOK_FUNCTION + sum + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_WHERE + = + . + TOK_TABLE_OR_COL + src + ds + '2008-04-08' + TOK_GROUPBY + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_ppr_multi_distinct.q.out ql/src/test/results/clientpositive/groupby_ppr_multi_distinct.q.out index 0ddb934..12f1288 100644 --- ql/src/test/results/clientpositive/groupby_ppr_multi_distinct.q.out +++ ql/src/test/results/clientpositive/groupby_ppr_multi_distinct.q.out @@ -23,39 +23,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 - TOK_SELEXPR - TOK_FUNCTIONDI - count - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - value - 5 - TOK_SELEXPR - TOK_FUNCTION - concat + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR TOK_FUNCTION substr . @@ -64,7 +44,38 @@ TOK_QUERY key 1 1 + TOK_SELEXPR + TOK_FUNCTIONDI + count + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_SELEXPR TOK_FUNCTION + concat + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 + TOK_FUNCTION + sum + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + value + 5 + TOK_SELEXPR + TOK_FUNCTIONDI sum TOK_FUNCTION substr @@ -73,39 +84,29 @@ TOK_QUERY src value 5 - TOK_SELEXPR - TOK_FUNCTIONDI - sum - TOK_FUNCTION - substr + TOK_SELEXPR + TOK_FUNCTIONDI + count . TOK_TABLE_OR_COL src value - 5 - TOK_SELEXPR - TOK_FUNCTIONDI - count + TOK_WHERE + = . TOK_TABLE_OR_COL src - value - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_GROUPBY - TOK_FUNCTION - substr - . - TOK_TABLE_OR_COL - src - key - 1 - 1 + ds + '2008-04-08' + TOK_GROUPBY + TOK_FUNCTION + substr + . + TOK_TABLE_OR_COL + src + key + 1 + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_sort_1_23.q.out ql/src/test/results/clientpositive/groupby_sort_1_23.q.out index a74cb2b..f08851c 100644 --- ql/src/test/results/clientpositive/groupby_sort_1_23.q.out +++ ql/src/test/results/clientpositive/groupby_sort_1_23.q.out @@ -57,10 +57,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -77,6 +73,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -416,10 +416,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -441,6 +437,10 @@ TOK_QUERY key TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -632,25 +632,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -667,6 +648,25 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 + subq1 STAGE DEPENDENCIES: @@ -1038,13 +1038,25 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + k + TOK_SELEXPR + TOK_FUNCTION + count + 1 + TOK_GROUPBY + TOK_TABLE_OR_COL + k TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1058,23 +1070,11 @@ TOK_QUERY TOK_TABLE_OR_COL val v + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - k - TOK_SELEXPR - TOK_FUNCTION - count - 1 - TOK_GROUPBY - TOK_TABLE_OR_COL - k STAGE DEPENDENCIES: @@ -1456,10 +1456,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1479,6 +1475,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -1819,10 +1819,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1847,6 +1843,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -2039,10 +2039,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -2068,6 +2064,10 @@ TOK_QUERY TOK_TABLE_OR_COL key 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -2278,30 +2278,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_FUNCTION - count - 1 - cnt - TOK_GROUPBY - TOK_TABLE_OR_COL - key - subq1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -2325,6 +2301,30 @@ TOK_QUERY key TOK_TABLE_OR_COL key + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_FUNCTION + count + 1 + cnt + TOK_GROUPBY + TOK_TABLE_OR_COL + key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 + subq1 STAGE DEPENDENCIES: @@ -2546,14 +2546,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2569,11 +2573,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2589,15 +2593,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -3051,14 +3051,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3074,11 +3078,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3101,15 +3105,11 @@ TOK_QUERY key TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -3677,14 +3677,31 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + subq1 + key + TOK_SELEXPR + + + . + TOK_TABLE_OR_COL + subq1 + cnt + . + TOK_TABLE_OR_COL + subq2 + cnt TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3701,13 +3718,13 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - subq1 - TOK_SUBQUERY - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + subq1 + TOK_SUBQUERY + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3724,6 +3741,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq2 = . @@ -3734,27 +3755,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq2 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - subq1 - key - TOK_SELEXPR - + - . - TOK_TABLE_OR_COL - subq1 - cnt - . - TOK_TABLE_OR_COL - subq2 - cnt STAGE DEPENDENCIES: @@ -4008,14 +4008,17 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4031,13 +4034,13 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - subq1 - TOK_SUBQUERY - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + subq1 + TOK_SUBQUERY + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4058,6 +4061,10 @@ TOK_QUERY key TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq2 = . @@ -4068,13 +4075,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq2 key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -4389,10 +4389,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -4409,6 +4405,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -4611,10 +4611,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -4639,6 +4635,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -5023,10 +5023,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5054,6 +5050,10 @@ TOK_QUERY TOK_TABLE_OR_COL val 2 + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -5395,28 +5395,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - 1 - constant - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5443,6 +5421,28 @@ TOK_QUERY constant TOK_TABLE_OR_COL val + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + 1 + constant + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 + subq STAGE DEPENDENCIES: @@ -5831,50 +5831,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - 1 - constant - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - constant - constant2 - TOK_SELEXPR - TOK_TABLE_OR_COL - val - TOK_SELEXPR - 2 - constant3 - subq2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5901,6 +5857,50 @@ TOK_QUERY constant3 TOK_TABLE_OR_COL val + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + constant + constant2 + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_SELEXPR + 2 + constant3 + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + 1 + constant + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 + subq + subq2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_sort_6.q.out ql/src/test/results/clientpositive/groupby_sort_6.q.out index cd1f979..a2f54a4 100644 --- ql/src/test/results/clientpositive/groupby_sort_6.q.out +++ ql/src/test/results/clientpositive/groupby_sort_6.q.out @@ -31,10 +31,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -56,6 +52,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -173,10 +173,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -198,6 +194,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -318,10 +318,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -343,6 +339,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out index df9d51e..2379a6d 100644 --- ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out +++ ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out @@ -57,10 +57,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -77,6 +73,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -416,10 +416,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -441,6 +437,10 @@ TOK_QUERY key TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -697,25 +697,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -732,6 +713,25 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 + subq1 STAGE DEPENDENCIES: @@ -1103,13 +1103,25 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + k + TOK_SELEXPR + TOK_FUNCTION + count + 1 + TOK_GROUPBY + TOK_TABLE_OR_COL + k TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1123,23 +1135,11 @@ TOK_QUERY TOK_TABLE_OR_COL val v + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - k - TOK_SELEXPR - TOK_FUNCTION - count - 1 - TOK_GROUPBY - TOK_TABLE_OR_COL - k STAGE DEPENDENCIES: @@ -1521,10 +1521,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1544,6 +1540,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -1884,10 +1884,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1912,6 +1908,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -2169,10 +2169,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -2198,6 +2194,10 @@ TOK_QUERY TOK_TABLE_OR_COL key 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 STAGE DEPENDENCIES: @@ -2473,30 +2473,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_FUNCTION - count - 1 - cnt - TOK_GROUPBY - TOK_TABLE_OR_COL - key - subq1 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -2520,6 +2496,30 @@ TOK_QUERY key TOK_TABLE_OR_COL key + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_FUNCTION + count + 1 + cnt + TOK_GROUPBY + TOK_TABLE_OR_COL + key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 + subq1 STAGE DEPENDENCIES: @@ -2806,14 +2806,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2829,11 +2833,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2849,15 +2853,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -3311,14 +3311,18 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3334,11 +3338,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3361,15 +3365,11 @@ TOK_QUERY key TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -4002,14 +4002,31 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + outputTbl1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + subq1 + key + TOK_SELEXPR + + + . + TOK_TABLE_OR_COL + subq1 + cnt + . + TOK_TABLE_OR_COL + subq2 + cnt TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4026,13 +4043,13 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - subq1 - TOK_SUBQUERY - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + subq1 + TOK_SUBQUERY + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4049,6 +4066,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq2 = . @@ -4059,27 +4080,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq2 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - outputTbl1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - subq1 - key - TOK_SELEXPR - + - . - TOK_TABLE_OR_COL - subq1 - cnt - . - TOK_TABLE_OR_COL - subq2 - cnt STAGE DEPENDENCIES: @@ -4333,14 +4333,17 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4356,13 +4359,13 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key - subq1 - TOK_SUBQUERY - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME T1 + subq1 + TOK_SUBQUERY + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -4383,6 +4386,10 @@ TOK_QUERY key TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T1 subq2 = . @@ -4393,13 +4400,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq2 key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -4779,10 +4779,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -4799,6 +4795,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -5066,10 +5066,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5094,6 +5090,10 @@ TOK_QUERY 1 TOK_TABLE_OR_COL val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -5478,10 +5478,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5509,6 +5505,10 @@ TOK_QUERY TOK_TABLE_OR_COL val 2 + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 STAGE DEPENDENCIES: @@ -5850,28 +5850,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - 1 - constant - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq TOK_INSERT TOK_DESTINATION TOK_TAB @@ -5898,6 +5876,28 @@ TOK_QUERY constant TOK_TABLE_OR_COL val + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + 1 + constant + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 + subq STAGE DEPENDENCIES: @@ -6286,50 +6286,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - T2 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - 1 - constant - TOK_SELEXPR - TOK_TABLE_OR_COL - val - subq - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - constant - constant2 - TOK_SELEXPR - TOK_TABLE_OR_COL - val - TOK_SELEXPR - 2 - constant3 - subq2 TOK_INSERT TOK_DESTINATION TOK_TAB @@ -6356,6 +6312,50 @@ TOK_QUERY constant3 TOK_TABLE_OR_COL val + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + constant + constant2 + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_SELEXPR + 2 + constant3 + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + 1 + constant + TOK_SELEXPR + TOK_TABLE_OR_COL + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + T2 + subq + subq2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input23.q.out ql/src/test/results/clientpositive/input23.q.out index 090d5b5..f9009b3 100644 --- ql/src/test/results/clientpositive/input23.q.out +++ ql/src/test/results/clientpositive/input23.q.out @@ -8,16 +8,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcpart - a - TOK_TABREF - TOK_TABNAME - srcpart - b TOK_INSERT TOK_DESTINATION TOK_DIR @@ -55,6 +45,16 @@ TOK_QUERY '14' TOK_LIMIT 5 + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcpart + a + TOK_TABREF + TOK_TABNAME + srcpart + b STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input42.q.out ql/src/test/results/clientpositive/input42.q.out index 8f52610..1e9455e 100644 --- ql/src/test/results/clientpositive/input42.q.out +++ ql/src/test/results/clientpositive/input42.q.out @@ -11,11 +11,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -30,6 +25,11 @@ TOK_QUERY a ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: @@ -1160,11 +1160,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1184,6 +1179,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 200 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: @@ -1731,11 +1731,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1756,6 +1751,11 @@ TOK_QUERY rand 100 0.1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input_part1.q.out ql/src/test/results/clientpositive/input_part1.q.out index 4a6ff86..9f820e9 100644 --- ql/src/test/results/clientpositive/input_part1.q.out +++ ql/src/test/results/clientpositive/input_part1.q.out @@ -17,57 +17,58 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - hr - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - ds - TOK_WHERE - and + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + hr + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + ds + TOK_WHERE and - < - . - TOK_TABLE_OR_COL - srcpart - key - 100 + and + < + . + TOK_TABLE_OR_COL + srcpart + key + 100 + = + . + TOK_TABLE_OR_COL + srcpart + ds + '2008-04-08' = . TOK_TABLE_OR_COL srcpart - ds - '2008-04-08' - = - . - TOK_TABLE_OR_COL - srcpart - hr - '12' + hr + '12' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input_part2.q.out ql/src/test/results/clientpositive/input_part2.q.out index 0383083..ffdf958 100644 --- ql/src/test/results/clientpositive/input_part2.q.out +++ ql/src/test/results/clientpositive/input_part2.q.out @@ -27,104 +27,106 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - hr - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - ds - TOK_WHERE - and + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + hr + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + ds + TOK_WHERE and - < - . - TOK_TABLE_OR_COL - srcpart - key - 100 + and + < + . + TOK_TABLE_OR_COL + srcpart + key + 100 + = + . + TOK_TABLE_OR_COL + srcpart + ds + '2008-04-08' = . TOK_TABLE_OR_COL srcpart - ds - '2008-04-08' - = + hr + '12' + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest2 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + value + TOK_SELEXPR . TOK_TABLE_OR_COL srcpart hr - '12' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest2 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - hr - TOK_SELEXPR - . - TOK_TABLE_OR_COL - srcpart - ds - TOK_WHERE - and + TOK_SELEXPR + . + TOK_TABLE_OR_COL + srcpart + ds + TOK_WHERE and - < - . - TOK_TABLE_OR_COL - srcpart - key - 100 + and + < + . + TOK_TABLE_OR_COL + srcpart + key + 100 + = + . + TOK_TABLE_OR_COL + srcpart + ds + '2008-04-09' = . TOK_TABLE_OR_COL srcpart - ds - '2008-04-09' - = - . - TOK_TABLE_OR_COL - srcpart - hr - '12' + hr + '12' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input_part7.q.out ql/src/test/results/clientpositive/input_part7.q.out index 80d53f4..b4a54bc 100644 --- ql/src/test/results/clientpositive/input_part7.q.out +++ ql/src/test/results/clientpositive/input_part7.q.out @@ -17,15 +17,38 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_SORTBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + key + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + value + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + ds + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + hr TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - SRCPART - X TOK_INSERT TOK_DESTINATION TOK_DIR @@ -49,12 +72,12 @@ TOK_QUERY X key 100 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME SRCPART - Y + X + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -78,35 +101,12 @@ TOK_QUERY Y key 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + SRCPART + Y A - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_SORTBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - key - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - value - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - ds - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - hr STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/input_part9.q.out ql/src/test/results/clientpositive/input_part9.q.out index 7ef66b0..92725f1 100644 --- ql/src/test/results/clientpositive/input_part9.q.out +++ ql/src/test/results/clientpositive/input_part9.q.out @@ -11,11 +11,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - SRCPART - x TOK_INSERT TOK_DESTINATION TOK_DIR @@ -35,6 +30,11 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + SRCPART + x STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join17.q.out ql/src/test/results/clientpositive/join17.q.out index b090b09..3099f20 100644 --- ql/src/test/results/clientpositive/join17.q.out +++ ql/src/test/results/clientpositive/join17.q.out @@ -17,7 +17,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_JOIN TOK_TABREF TOK_TABNAME @@ -36,20 +36,21 @@ TOK_QUERY TOK_TABLE_OR_COL src2 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_TABNAME - src1 - TOK_SELEXPR - TOK_ALLCOLREF + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB TOK_TABNAME - src2 + dest1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + src1 + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + src2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join26.q.out ql/src/test/results/clientpositive/join26.q.out index 9f589d2..8160ada 100644 --- ql/src/test/results/clientpositive/join26.q.out +++ ql/src/test/results/clientpositive/join26.q.out @@ -25,6 +25,33 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + x + y + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + y + value TOK_FROM TOK_JOIN TOK_JOIN @@ -72,33 +99,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - x - y - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - y - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join32.q.out ql/src/test/results/clientpositive/join32.q.out index aa44362..6ffc919 100644 --- ql/src/test/results/clientpositive/join32.q.out +++ ql/src/test/results/clientpositive/join32.q.out @@ -29,6 +29,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + y + value TOK_FROM TOK_JOIN TOK_JOIN @@ -76,27 +97,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - y - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join32_lessSize.q.out ql/src/test/results/clientpositive/join32_lessSize.q.out index 18c0d72..ab4078a 100644 --- ql/src/test/results/clientpositive/join32_lessSize.q.out +++ ql/src/test/results/clientpositive/join32_lessSize.q.out @@ -37,6 +37,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + y + value TOK_FROM TOK_JOIN TOK_JOIN @@ -84,27 +105,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - y - value STAGE DEPENDENCIES: @@ -628,6 +628,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + y + value TOK_FROM TOK_JOIN TOK_JOIN @@ -675,27 +696,6 @@ TOK_QUERY TOK_TABLE_OR_COL z key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - y - value STAGE DEPENDENCIES: @@ -1883,10 +1883,46 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j2 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + res + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + res + value TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + value TOK_FROM TOK_JOIN TOK_TABREF @@ -1906,21 +1942,6 @@ TOK_QUERY TOK_TABLE_OR_COL y key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - value res TOK_TABREF TOK_TABNAME @@ -1949,27 +1970,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j2 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - res - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - res - value STAGE DEPENDENCIES: @@ -2495,10 +2495,46 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j2 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + res + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + res + value TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + value TOK_FROM TOK_LEFTOUTERJOIN TOK_TABREF @@ -2518,21 +2554,6 @@ TOK_QUERY TOK_TABLE_OR_COL y key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - value res TOK_TABREF TOK_TABNAME @@ -2561,27 +2582,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j2 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - res - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - res - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join33.q.out ql/src/test/results/clientpositive/join33.q.out index aa44362..6ffc919 100644 --- ql/src/test/results/clientpositive/join33.q.out +++ ql/src/test/results/clientpositive/join33.q.out @@ -29,6 +29,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + z + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + y + value TOK_FROM TOK_JOIN TOK_JOIN @@ -76,27 +97,6 @@ TOK_QUERY z hr 11 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - z - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - y - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join34.q.out ql/src/test/results/clientpositive/join34.q.out index 7dc6e00..543f777 100644 --- ql/src/test/results/clientpositive/join34.q.out +++ ql/src/test/results/clientpositive/join34.q.out @@ -37,16 +37,32 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + subq1 + value TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - x TOK_INSERT TOK_DESTINATION TOK_DIR @@ -71,12 +87,12 @@ TOK_QUERY x key 20 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME src - x1 + x + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -101,6 +117,11 @@ TOK_QUERY x1 key 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + x1 subq1 TOK_TABREF TOK_TABNAME @@ -115,27 +136,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq1 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - subq1 - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join35.q.out ql/src/test/results/clientpositive/join35.q.out index f41ea36..a181df4 100644 --- ql/src/test/results/clientpositive/join35.q.out +++ ql/src/test/results/clientpositive/join35.q.out @@ -37,16 +37,32 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest_j1 + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + x + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + subq1 + cnt TOK_FROM TOK_JOIN TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - x TOK_INSERT TOK_DESTINATION TOK_DIR @@ -75,12 +91,12 @@ TOK_QUERY TOK_TABLE_OR_COL x key - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME src - x1 + x + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -109,6 +125,11 @@ TOK_QUERY TOK_TABLE_OR_COL x1 key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + x1 subq1 TOK_TABREF TOK_TABNAME @@ -123,27 +144,6 @@ TOK_QUERY TOK_TABLE_OR_COL subq1 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest_j1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - x - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - subq1 - cnt STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join9.q.out ql/src/test/results/clientpositive/join9.q.out index 4ece610..d97c6dc 100644 --- ql/src/test/results/clientpositive/join9.q.out +++ ql/src/test/results/clientpositive/join9.q.out @@ -17,7 +17,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_JOIN TOK_TABREF TOK_TABNAME @@ -36,36 +36,37 @@ TOK_QUERY TOK_TABLE_OR_COL src2 key - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dest1 - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - src1 - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - src2 - value - TOK_WHERE - and - = + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dest1 + TOK_SELECT + TOK_SELEXPR . TOK_TABLE_OR_COL src1 - ds - '2008-04-08' - = + key + TOK_SELEXPR . TOK_TABLE_OR_COL - src1 - hr - '12' + src2 + value + TOK_WHERE + and + = + . + TOK_TABLE_OR_COL + src1 + ds + '2008-04-08' + = + . + TOK_TABLE_OR_COL + src1 + hr + '12' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join_filters_overlap.q.out ql/src/test/results/clientpositive/join_filters_overlap.q.out index 3dae4e1..59f2734 100644 --- ql/src/test/results/clientpositive/join_filters_overlap.q.out +++ ql/src/test/results/clientpositive/join_filters_overlap.q.out @@ -20,6 +20,13 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_LEFTOUTERJOIN TOK_LEFTOUTERJOIN @@ -80,13 +87,6 @@ TOK_QUERY c value 60 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -271,6 +271,13 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_LEFTOUTERJOIN TOK_RIGHTOUTERJOIN @@ -331,13 +338,6 @@ TOK_QUERY c value 60 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -522,6 +522,13 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_LEFTOUTERJOIN TOK_RIGHTOUTERJOIN @@ -596,13 +603,6 @@ TOK_QUERY c value 60 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -787,6 +787,13 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_LEFTOUTERJOIN TOK_LEFTOUTERJOIN @@ -875,13 +882,6 @@ TOK_QUERY d value 40 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: @@ -1073,6 +1073,13 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_LEFTOUTERJOIN TOK_LEFTOUTERJOIN @@ -1161,13 +1168,6 @@ TOK_QUERY d value 40 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/join_map_ppr.q.out ql/src/test/results/clientpositive/join_map_ppr.q.out index 58f1898..09a7632 100644 --- ql/src/test/results/clientpositive/join_map_ppr.q.out +++ ql/src/test/results/clientpositive/join_map_ppr.q.out @@ -27,39 +27,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_JOIN - TOK_TABREF - TOK_TABNAME - src1 - x - TOK_TABREF - TOK_TABNAME - src - y - = - . - TOK_TABLE_OR_COL - x - key - . - TOK_TABLE_OR_COL - y - key - TOK_TABREF - TOK_TABNAME - srcpart - z - = - . - TOK_TABLE_OR_COL - x - key - . - TOK_TABLE_OR_COL - z - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -101,6 +68,39 @@ TOK_QUERY z hr 11 + TOK_FROM + TOK_JOIN + TOK_JOIN + TOK_TABREF + TOK_TABNAME + src1 + x + TOK_TABREF + TOK_TABNAME + src + y + = + . + TOK_TABLE_OR_COL + x + key + . + TOK_TABLE_OR_COL + y + key + TOK_TABREF + TOK_TABNAME + srcpart + z + = + . + TOK_TABLE_OR_COL + x + key + . + TOK_TABLE_OR_COL + z + key STAGE DEPENDENCIES: @@ -646,39 +646,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_JOIN - TOK_TABREF - TOK_TABNAME - src1_copy - x - TOK_TABREF - TOK_TABNAME - src_copy - y - = - . - TOK_TABLE_OR_COL - x - key - . - TOK_TABLE_OR_COL - y - key - TOK_TABREF - TOK_TABNAME - srcpart - z - = - . - TOK_TABLE_OR_COL - x - key - . - TOK_TABLE_OR_COL - z - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -720,6 +687,39 @@ TOK_QUERY z hr 11 + TOK_FROM + TOK_JOIN + TOK_JOIN + TOK_TABREF + TOK_TABNAME + src1_copy + x + TOK_TABREF + TOK_TABNAME + src_copy + y + = + . + TOK_TABLE_OR_COL + x + key + . + TOK_TABLE_OR_COL + y + key + TOK_TABREF + TOK_TABNAME + srcpart + z + = + . + TOK_TABLE_OR_COL + x + key + . + TOK_TABLE_OR_COL + z + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_1.q.out ql/src/test/results/clientpositive/list_bucket_dml_1.q.out index 104d8cc..680748c 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_1.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_1.q.out @@ -33,10 +33,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -63,6 +59,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -400,10 +400,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_dynamic_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -430,6 +426,10 @@ TOK_QUERY TOK_TABLE_OR_COL key "484" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_dynamic_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_10.q.out ql/src/test/results/clientpositive/list_bucket_dml_10.q.out index e9367ac..9387a60 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_10.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_10.q.out @@ -55,10 +55,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -78,6 +74,10 @@ TOK_QUERY TOK_SELEXPR TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_11.q.out ql/src/test/results/clientpositive/list_bucket_dml_11.q.out index caea795..6f5c7bf 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_11.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_11.q.out @@ -41,10 +41,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -64,6 +60,10 @@ TOK_QUERY TOK_SELEXPR TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -270,10 +270,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_static_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -300,6 +296,10 @@ TOK_QUERY TOK_TABLE_OR_COL value "val_466" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_static_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_12.q.out ql/src/test/results/clientpositive/list_bucket_dml_12.q.out index 59df9f3..a34e92b 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_12.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_12.q.out @@ -39,10 +39,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -68,6 +64,10 @@ TOK_QUERY value TOK_SELEXPR 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -282,10 +282,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_mul_col TOK_INSERT TOK_DESTINATION TOK_DIR @@ -313,6 +309,10 @@ TOK_QUERY TOK_TABLE_OR_COL col4 "val_466" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_mul_col STAGE DEPENDENCIES: @@ -440,10 +440,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_mul_col TOK_INSERT TOK_DESTINATION TOK_DIR @@ -471,6 +467,10 @@ TOK_QUERY TOK_TABLE_OR_COL col4 "val_382" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_mul_col STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_13.q.out ql/src/test/results/clientpositive/list_bucket_dml_13.q.out index b8aebbc..36100e5 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_13.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_13.q.out @@ -39,10 +39,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -68,6 +64,10 @@ TOK_QUERY value TOK_SELEXPR 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -282,10 +282,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_mul_col TOK_INSERT TOK_DESTINATION TOK_DIR @@ -313,6 +309,10 @@ TOK_QUERY TOK_TABLE_OR_COL col4 "val_466" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_mul_col STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_14.q.out ql/src/test/results/clientpositive/list_bucket_dml_14.q.out index d53903e..d69e366 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_14.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_14.q.out @@ -31,10 +31,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -43,6 +39,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -253,10 +253,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing TOK_INSERT TOK_DESTINATION TOK_DIR @@ -273,6 +269,10 @@ TOK_QUERY TOK_TABLE_OR_COL key "484" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_2.q.out ql/src/test/results/clientpositive/list_bucket_dml_2.q.out index 9b3cec6..89e7be3 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_2.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_2.q.out @@ -57,10 +57,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -85,6 +81,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -368,10 +368,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_static_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -399,6 +395,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_static_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_3.q.out ql/src/test/results/clientpositive/list_bucket_dml_3.q.out index 718b70e..6421017 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_3.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_3.q.out @@ -27,10 +27,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -55,6 +51,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -340,10 +340,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_static_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -370,6 +366,10 @@ TOK_QUERY TOK_TABLE_OR_COL key "484" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_static_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_4.q.out ql/src/test/results/clientpositive/list_bucket_dml_4.q.out index 99496d5..b0927f2 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_4.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_4.q.out @@ -65,10 +65,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -93,6 +89,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -356,10 +356,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -384,6 +380,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -775,10 +775,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_static_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -806,6 +802,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_static_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_5.q.out ql/src/test/results/clientpositive/list_bucket_dml_5.q.out index ca79fed..532ce7b 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_5.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_5.q.out @@ -35,10 +35,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -65,6 +61,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -407,10 +407,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_dynamic_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -443,6 +439,10 @@ TOK_QUERY TOK_TABLE_OR_COL value "val_103" + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_dynamic_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_6.q.out ql/src/test/results/clientpositive/list_bucket_dml_6.q.out index d5deadb..25c63e0 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_6.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_6.q.out @@ -111,10 +111,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -149,6 +145,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -461,10 +461,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -499,6 +495,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -947,10 +947,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_dynamic_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -968,6 +964,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_dynamic_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_7.q.out ql/src/test/results/clientpositive/list_bucket_dml_7.q.out index 4aea4db..c357c51 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_7.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_7.q.out @@ -59,10 +59,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -97,6 +93,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -409,10 +409,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -447,6 +443,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -895,10 +895,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_dynamic_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -916,6 +912,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_dynamic_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_8.q.out ql/src/test/results/clientpositive/list_bucket_dml_8.q.out index ad17430..cf5605a 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_8.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_8.q.out @@ -113,10 +113,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -151,6 +147,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -542,10 +542,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_dynamic_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -563,6 +559,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_dynamic_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_dml_9.q.out ql/src/test/results/clientpositive/list_bucket_dml_9.q.out index f94a3cc..bb0b7b5 100644 --- ql/src/test/results/clientpositive/list_bucket_dml_9.q.out +++ ql/src/test/results/clientpositive/list_bucket_dml_9.q.out @@ -65,10 +65,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -93,6 +89,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -356,10 +356,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_TAB @@ -384,6 +380,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -775,10 +775,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - list_bucketing_static_part TOK_INSERT TOK_DESTINATION TOK_DIR @@ -806,6 +802,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + list_bucketing_static_part STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_multiskew_1.q.out ql/src/test/results/clientpositive/list_bucket_query_multiskew_1.q.out index 5e9c0ff..26595c0 100644 --- ql/src/test/results/clientpositive/list_bucket_query_multiskew_1.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_multiskew_1.q.out @@ -121,10 +121,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -153,6 +149,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -278,10 +278,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -313,6 +309,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_238' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -439,10 +439,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -466,6 +462,10 @@ TOK_QUERY TOK_TABLE_OR_COL value "3" + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -590,10 +590,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -620,6 +616,10 @@ TOK_QUERY TOK_TABLE_OR_COL key '495' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out index 2fc5d7f..1755ed6 100644 --- ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_multiskew_2.q.out @@ -121,10 +121,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -151,6 +147,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -323,10 +323,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -350,6 +346,10 @@ TOK_QUERY TOK_TABLE_OR_COL key '406' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -478,10 +478,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -523,6 +519,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_238' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_multiskew_3.q.out ql/src/test/results/clientpositive/list_bucket_query_multiskew_3.q.out index b8fe430..cdbb367 100644 --- ql/src/test/results/clientpositive/list_bucket_query_multiskew_3.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_multiskew_3.q.out @@ -243,10 +243,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -269,6 +265,10 @@ TOK_QUERY TOK_TABLE_OR_COL key '145' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -390,10 +390,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -412,6 +408,10 @@ TOK_QUERY TOK_TABLE_OR_COL hr '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -551,10 +551,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -582,6 +578,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -705,10 +705,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -736,6 +732,10 @@ TOK_QUERY TOK_TABLE_OR_COL value 'val_327' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_oneskew_1.q.out ql/src/test/results/clientpositive/list_bucket_query_oneskew_1.q.out index f0c681c..9dece09 100644 --- ql/src/test/results/clientpositive/list_bucket_query_oneskew_1.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_oneskew_1.q.out @@ -184,10 +184,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -206,6 +202,10 @@ TOK_QUERY TOK_TABLE_OR_COL x 484 + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -331,10 +331,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -353,6 +349,10 @@ TOK_QUERY TOK_TABLE_OR_COL x 495 + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -474,10 +474,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -496,6 +492,10 @@ TOK_QUERY TOK_TABLE_OR_COL x 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_oneskew_2.q.out ql/src/test/results/clientpositive/list_bucket_query_oneskew_2.q.out index 221ee70..caf96d9 100644 --- ql/src/test/results/clientpositive/list_bucket_query_oneskew_2.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_oneskew_2.q.out @@ -189,13 +189,22 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + x + TOK_WHERE + = + TOK_TABLE_OR_COL + x + 484 TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -209,20 +218,11 @@ TOK_QUERY TOK_TABLE_OR_COL ds '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily subq - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - x - TOK_WHERE - = - TOK_TABLE_OR_COL - x - 484 STAGE DEPENDENCIES: @@ -348,13 +348,25 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + x1 + TOK_SELEXPR + TOK_TABLE_OR_COL + y1 + TOK_WHERE + = + TOK_TABLE_OR_COL + x1 + 484 TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -373,23 +385,11 @@ TOK_QUERY TOK_TABLE_OR_COL ds '1' + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily subq - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - x1 - TOK_SELEXPR - TOK_TABLE_OR_COL - y1 - TOK_WHERE - = - TOK_TABLE_OR_COL - x1 - 484 STAGE DEPENDENCIES: @@ -515,10 +515,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -544,6 +540,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL y + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: @@ -695,13 +695,25 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + x + TOK_SELEXPR + TOK_TABLE_OR_COL + c + TOK_WHERE + = + TOK_TABLE_OR_COL + x + 484 TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -723,23 +735,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL x + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily subq - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - x - TOK_SELEXPR - TOK_TABLE_OR_COL - c - TOK_WHERE - = - TOK_TABLE_OR_COL - x - 484 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/list_bucket_query_oneskew_3.q.out ql/src/test/results/clientpositive/list_bucket_query_oneskew_3.q.out index d6a075b..6351132 100644 --- ql/src/test/results/clientpositive/list_bucket_query_oneskew_3.q.out +++ ql/src/test/results/clientpositive/list_bucket_query_oneskew_3.q.out @@ -211,10 +211,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - fact_daily TOK_INSERT TOK_DESTINATION TOK_DIR @@ -234,6 +230,10 @@ TOK_QUERY TOK_TABLE_OR_COL x 86 + TOK_FROM + TOK_TABREF + TOK_TABNAME + fact_daily STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/load_dyn_part8.q.out ql/src/test/results/clientpositive/load_dyn_part8.q.out index d3558a7..6be219a 100644 --- ql/src/test/results/clientpositive/load_dyn_part8.q.out +++ ql/src/test/results/clientpositive/load_dyn_part8.q.out @@ -51,64 +51,66 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - nzhang_part8 - TOK_PARTSPEC - TOK_PARTVAL + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + nzhang_part8 + TOK_PARTSPEC + TOK_PARTVAL + ds + TOK_PARTVAL + hr + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_SELEXPR + TOK_TABLE_OR_COL ds - TOK_PARTVAL + TOK_SELEXPR + TOK_TABLE_OR_COL hr - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_SELEXPR - TOK_TABLE_OR_COL - ds - TOK_SELEXPR - TOK_TABLE_OR_COL - hr - TOK_WHERE - <= - TOK_TABLE_OR_COL - ds - '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - nzhang_part8 - TOK_PARTSPEC - TOK_PARTVAL + TOK_WHERE + <= + TOK_TABLE_OR_COL ds - '2008-12-31' - TOK_PARTVAL + '2008-04-08' + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + nzhang_part8 + TOK_PARTSPEC + TOK_PARTVAL + ds + '2008-12-31' + TOK_PARTVAL + hr + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_SELEXPR + TOK_TABLE_OR_COL hr - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_SELEXPR - TOK_TABLE_OR_COL - hr - TOK_WHERE - > - TOK_TABLE_OR_COL - ds - '2008-04-08' + TOK_WHERE + > + TOK_TABLE_OR_COL + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/louter_join_ppr.q.out ql/src/test/results/clientpositive/louter_join_ppr.q.out index fde3f9d..38cc73e 100644 --- ql/src/test/results/clientpositive/louter_join_ppr.q.out +++ ql/src/test/results/clientpositive/louter_join_ppr.q.out @@ -19,7 +19,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_LEFTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -45,59 +45,60 @@ TOK_QUERY b ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < - . - TOK_TABLE_OR_COL - b - key - 25 + 25 STAGE DEPENDENCIES: @@ -388,7 +389,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_LEFTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -414,59 +415,60 @@ TOK_QUERY a ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < - . - TOK_TABLE_OR_COL - b - key - 25 + 25 STAGE DEPENDENCIES: @@ -860,7 +862,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_LEFTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -879,66 +881,67 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < + 25 + = . TOK_TABLE_OR_COL b - key - 25 - = - . - TOK_TABLE_OR_COL - b - ds - '2008-04-08' + ds + '2008-04-08' STAGE DEPENDENCIES: @@ -1327,7 +1330,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_LEFTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -1346,66 +1349,67 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a + b key - 10 - < - . - TOK_TABLE_OR_COL - a - key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < + 25 + = . TOK_TABLE_OR_COL - b - key - 25 - = - . - TOK_TABLE_OR_COL - a - ds - '2008-04-08' + a + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/macro.q.out ql/src/test/results/clientpositive/macro.q.out index 78cd90a..b3eacff 100644 --- ql/src/test/results/clientpositive/macro.q.out +++ ql/src/test/results/clientpositive/macro.q.out @@ -44,10 +44,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -59,6 +55,10 @@ TOK_QUERY 2 TOK_LIMIT 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -134,10 +134,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -150,6 +146,10 @@ TOK_QUERY 1 TOK_LIMIT 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -252,10 +252,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -268,6 +264,10 @@ TOK_QUERY 9 TOK_LIMIT 1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/metadataonly1.q.out ql/src/test/results/clientpositive/metadataonly1.q.out index b90cb98..edb57d2 100644 --- ql/src/test/results/clientpositive/metadataonly1.q.out +++ ql/src/test/results/clientpositive/metadataonly1.q.out @@ -13,10 +13,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -27,6 +23,10 @@ TOK_QUERY max TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 STAGE DEPENDENCIES: @@ -98,10 +98,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -112,6 +108,10 @@ TOK_QUERY max TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 STAGE DEPENDENCIES: @@ -243,10 +243,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -257,6 +253,10 @@ TOK_QUERY count TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 STAGE DEPENDENCIES: @@ -389,10 +389,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -403,6 +399,10 @@ TOK_QUERY count TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 STAGE DEPENDENCIES: @@ -543,6 +543,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -551,10 +559,6 @@ TOK_QUERY a2 TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -566,6 +570,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds m + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 b = . @@ -576,14 +584,6 @@ TOK_QUERY TOK_TABLE_OR_COL b m - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: @@ -1023,10 +1023,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1043,6 +1039,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST2 STAGE DEPENDENCIES: @@ -1268,10 +1268,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1288,6 +1284,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST2 STAGE DEPENDENCIES: @@ -1511,10 +1511,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1525,6 +1521,10 @@ TOK_QUERY max TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST1 STAGE DEPENDENCIES: @@ -1751,10 +1751,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - TEST2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1771,6 +1767,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + TEST2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/multi_insert_subquery.q.out ql/src/test/results/clientpositive/multi_insert_subquery.q.out new file mode 100644 index 0000000..cdcc5b8 --- /dev/null +++ ql/src/test/results/clientpositive/multi_insert_subquery.q.out @@ -0,0 +1,533 @@ +PREHOOK: query: create table src_10 as select * from src tablesample(10 rows) +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src +POSTHOOK: query: create table src_10 as select * from src tablesample(10 rows) +POSTHOOK: type: CREATETABLE_AS_SELECT +POSTHOOK: Input: default@src +POSTHOOK: Output: default@src_10 +PREHOOK: query: create table src_lv1 (key string, value string) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@src_lv1 +POSTHOOK: query: create table src_lv1 (key string, value string) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@src_lv1 +PREHOOK: query: create table src_lv2 (key string, value string) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@src_lv2 +POSTHOOK: query: create table src_lv2 (key string, value string) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@src_lv2 +PREHOOK: query: explain extended +from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C +PREHOOK: type: QUERY +POSTHOOK: query: explain extended +from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C +POSTHOOK: type: QUERY +ABSTRACT SYNTAX TREE: + +TOK_QUERY + TOK_FROM_BASE + TOK_TABREF + TOK_TABNAME + src_10 + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + src_lv1 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEDESC + TOK_TABLE_OR_COL + key + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + C + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + C + TOK_LATERAL_VIEW + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + explode + TOK_FUNCTION + array + + + TOK_TABLE_OR_COL + key + 1 + + + TOK_TABLE_OR_COL + key + 2 + C + TOK_TABALIAS + A + X1 + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + src_lv2 + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + key + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + C + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + C + TOK_LATERAL_VIEW + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + explode + TOK_FUNCTION + array + + + TOK_TABLE_OR_COL + key + 3 + + + TOK_TABLE_OR_COL + key + 4 + C + TOK_TABALIAS + A + X2 + + +STAGE DEPENDENCIES: + Stage-2 is a root stage + Stage-1 depends on stages: Stage-2 + Stage-3 depends on stages: Stage-1 + Stage-4 depends on stages: Stage-2 + Stage-0 depends on stages: Stage-4 + Stage-5 depends on stages: Stage-0 + +STAGE PLANS: + Stage: Stage-2 + Map Reduce + Map Operator Tree: + TableScan + alias: src_10 + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + GatherStats: false + Lateral View Forward + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: string) + outputColumnNames: key + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + Lateral View Join Operator + outputColumnNames: _col0, _col4 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), _col4 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: double) + sort order: ++ + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + tag: -1 + auto parallelism: false + Select Operator + expressions: array((key + 3),(key + 4)) (type: array) + outputColumnNames: _col0 + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + UDTF Operator + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + function name: explode + Lateral View Join Operator + outputColumnNames: _col0, _col4 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), _col4 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: double) + sort order: ++ + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + tag: -1 + auto parallelism: false + Lateral View Forward + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: string) + outputColumnNames: key + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + Lateral View Join Operator + outputColumnNames: _col0, _col4 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), _col4 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + GlobalTableId: 0 +#### A masked pattern was here #### + NumFilesPerFileSink: 1 + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + properties: + columns _col0,_col1 + columns.types string,double + escape.delim \ + serialization.lib org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + serde: org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + TotalFiles: 1 + GatherStats: false + MultiFileSpray: false + Select Operator + expressions: array((key + 1),(key + 2)) (type: array) + outputColumnNames: _col0 + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + UDTF Operator + Statistics: Num rows: 10 Data size: 104 Basic stats: COMPLETE Column stats: NONE + function name: explode + Lateral View Join Operator + outputColumnNames: _col0, _col4 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), _col4 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + GlobalTableId: 0 +#### A masked pattern was here #### + NumFilesPerFileSink: 1 + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + properties: + columns _col0,_col1 + columns.types string,double + escape.delim \ + serialization.lib org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + serde: org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + TotalFiles: 1 + GatherStats: false + MultiFileSpray: false + Path -> Alias: +#### A masked pattern was here #### + Path -> Partition: +#### A masked pattern was here #### + Partition + base file name: src_10 + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + COLUMN_STATS_ACCURATE true + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_10 + numFiles 1 + numRows 10 + rawDataSize 104 + serialization.ddl struct src_10 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + totalSize 114 +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + COLUMN_STATS_ACCURATE true + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_10 + numFiles 1 + numRows 10 + rawDataSize 104 + serialization.ddl struct src_10 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + totalSize 114 +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + name: default.src_10 + name: default.src_10 + Truncated Path -> Alias: + /src_10 [src_10] + Needs Tagging: false + Reduce Operator Tree: + Select Operator + expressions: KEY.reducesinkkey0 (type: string), KEY.reducesinkkey1 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + GlobalTableId: 2 +#### A masked pattern was here #### + NumFilesPerFileSink: 1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE +#### A masked pattern was here #### + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_lv2 + serialization.ddl struct src_lv2 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + name: default.src_lv2 + TotalFiles: 1 + GatherStats: true + MultiFileSpray: false + + Stage: Stage-1 + Move Operator + tables: + replace: true +#### A masked pattern was here #### + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_lv2 + serialization.ddl struct src_lv2 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + name: default.src_lv2 + + Stage: Stage-3 + Stats-Aggr Operator +#### A masked pattern was here #### + + Stage: Stage-4 + Map Reduce + Map Operator Tree: + TableScan + GatherStats: false + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: double) + sort order: -+ + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + tag: -1 + auto parallelism: false + Path -> Alias: +#### A masked pattern was here #### + Path -> Partition: +#### A masked pattern was here #### + Partition + base file name: -mr-10002 + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + properties: + columns _col0,_col1 + columns.types string,double + escape.delim \ + serialization.lib org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + serde: org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + properties: + columns _col0,_col1 + columns.types string,double + escape.delim \ + serialization.lib org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + serde: org.apache.hadoop.hive.serde2.lazybinary.LazyBinarySerDe + Truncated Path -> Alias: +#### A masked pattern was here #### + Needs Tagging: false + Reduce Operator Tree: + Select Operator + expressions: KEY.reducesinkkey0 (type: string), KEY.reducesinkkey1 (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + GlobalTableId: 1 +#### A masked pattern was here #### + NumFilesPerFileSink: 1 + Statistics: Num rows: 20 Data size: 208 Basic stats: COMPLETE Column stats: NONE +#### A masked pattern was here #### + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_lv1 + serialization.ddl struct src_lv1 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + name: default.src_lv1 + TotalFiles: 1 + GatherStats: true + MultiFileSpray: false + + Stage: Stage-0 + Move Operator + tables: + replace: true +#### A masked pattern was here #### + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + bucket_count -1 + columns key,value + columns.comments + columns.types string:string +#### A masked pattern was here #### + name default.src_lv1 + serialization.ddl struct src_lv1 { string key, string value} + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe +#### A masked pattern was here #### + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + name: default.src_lv1 + + Stage: Stage-5 + Stats-Aggr Operator +#### A masked pattern was here #### + +PREHOOK: query: from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C +PREHOOK: type: QUERY +PREHOOK: Input: default@src_10 +PREHOOK: Output: default@src_lv1 +PREHOOK: Output: default@src_lv2 +POSTHOOK: query: from src_10 +insert overwrite table src_lv1 select * from (select key, C lateral view explode(array(key+1, key+2)) A as C) X1 order by key desc, C +insert overwrite table src_lv2 select * from (select key, C lateral view explode(array(key+3, key+4)) A as C) X2 order by key asc, C +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src_10 +POSTHOOK: Output: default@src_lv1 +POSTHOOK: Output: default@src_lv2 +POSTHOOK: Lineage: src_lv1.key SCRIPT [(src_10)src_10.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: src_lv1.value SIMPLE [(src_10)src_10.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +POSTHOOK: Lineage: src_lv2.key SCRIPT [(src_10)src_10.FieldSchema(name:key, type:string, comment:null), ] +POSTHOOK: Lineage: src_lv2.value SIMPLE [(src_10)src_10.FieldSchema(name:INPUT__FILE__NAME, type:string, comment:), ] +PREHOOK: query: select * from src_lv1 +PREHOOK: type: QUERY +PREHOOK: Input: default@src_lv1 +#### A masked pattern was here #### +POSTHOOK: query: select * from src_lv1 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src_lv1 +#### A masked pattern was here #### +98 99.0 +98 100.0 +86 87.0 +86 88.0 +484 485.0 +484 486.0 +409 410.0 +409 411.0 +311 312.0 +311 313.0 +278 279.0 +278 280.0 +27 28.0 +27 29.0 +255 256.0 +255 257.0 +238 239.0 +238 240.0 +165 166.0 +165 167.0 +PREHOOK: query: select * from src_lv2 +PREHOOK: type: QUERY +PREHOOK: Input: default@src_lv2 +#### A masked pattern was here #### +POSTHOOK: query: select * from src_lv2 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src_lv2 +#### A masked pattern was here #### +165 168.0 +165 169.0 +238 241.0 +238 242.0 +255 258.0 +255 259.0 +27 30.0 +27 31.0 +278 281.0 +278 282.0 +311 314.0 +311 315.0 +409 412.0 +409 413.0 +484 487.0 +484 488.0 +86 89.0 +86 90.0 +98 101.0 +98 102.0 diff --git ql/src/test/results/clientpositive/outer_join_ppr.q.out ql/src/test/results/clientpositive/outer_join_ppr.q.out index 1951b0f..8dcfbb4 100644 --- ql/src/test/results/clientpositive/outer_join_ppr.q.out +++ ql/src/test/results/clientpositive/outer_join_ppr.q.out @@ -19,7 +19,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_FULLOUTERJOIN TOK_TABREF TOK_TABNAME @@ -45,59 +45,60 @@ TOK_QUERY b ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < - . - TOK_TABLE_OR_COL - b - key - 25 + 25 STAGE DEPENDENCIES: @@ -483,7 +484,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_FULLOUTERJOIN TOK_TABREF TOK_TABNAME @@ -502,66 +503,67 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a + b key - 10 - < - . - TOK_TABLE_OR_COL - a - key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < + 25 + = . TOK_TABLE_OR_COL b - key - 25 - = - . - TOK_TABLE_OR_COL - b - ds - '2008-04-08' + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/pcr.q.out ql/src/test/results/clientpositive/pcr.q.out index 6155250..e00944c 100644 --- ql/src/test/results/clientpositive/pcr.q.out +++ ql/src/test/results/clientpositive/pcr.q.out @@ -55,10 +55,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -90,6 +86,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -278,10 +278,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -307,6 +303,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -578,10 +578,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -618,6 +614,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -808,10 +808,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -853,6 +849,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -1045,10 +1045,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1090,6 +1086,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -1338,10 +1338,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1383,6 +1379,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -1639,10 +1639,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1676,6 +1672,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -1853,10 +1853,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1885,6 +1881,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -2098,10 +2098,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2130,6 +2126,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -2411,10 +2411,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2459,6 +2455,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -2637,6 +2637,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + t1 + key TOK_FROM TOK_JOIN TOK_TABREF @@ -2670,19 +2683,6 @@ TOK_QUERY t2 ds '2000-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - t1 - key STAGE DEPENDENCIES: @@ -2934,6 +2934,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + t1 + key TOK_FROM TOK_JOIN TOK_TABREF @@ -2967,19 +2980,6 @@ TOK_QUERY t2 ds '2000-04-09' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - t1 - key STAGE DEPENDENCIES: @@ -3289,10 +3289,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3342,6 +3338,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -3657,10 +3657,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - pcr_t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3705,6 +3701,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + pcr_t1 STAGE DEPENDENCIES: @@ -3993,44 +3993,46 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME pcr_t1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - pcr_t2 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_WHERE - = - TOK_TABLE_OR_COL - ds - '2000-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - pcr_t3 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_WHERE - = - TOK_TABLE_OR_COL - ds - '2000-04-08' + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + pcr_t2 + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_WHERE + = + TOK_TABLE_OR_COL + ds + '2000-04-08' + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + pcr_t3 + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_WHERE + = + TOK_TABLE_OR_COL + ds + '2000-04-08' STAGE DEPENDENCIES: @@ -4560,54 +4562,56 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME pcr_t1 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - pcr_t2 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_WHERE - and - = - TOK_TABLE_OR_COL - ds - '2000-04-08' - = + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + pcr_t2 + TOK_SELECT + TOK_SELEXPR TOK_TABLE_OR_COL key - 2 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - pcr_t3 - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_WHERE - and - = + TOK_SELEXPR TOK_TABLE_OR_COL - ds - '2000-04-08' - = + value + TOK_WHERE + and + = + TOK_TABLE_OR_COL + ds + '2000-04-08' + = + TOK_TABLE_OR_COL + key + 2 + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + pcr_t3 + TOK_SELECT + TOK_SELEXPR TOK_TABLE_OR_COL key - 3 + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_WHERE + and + = + TOK_TABLE_OR_COL + ds + '2000-04-08' + = + TOK_TABLE_OR_COL + key + 3 STAGE DEPENDENCIES: @@ -5219,10 +5223,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -5250,6 +5250,10 @@ TOK_QUERY key TOK_LIMIT 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -5378,10 +5382,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -5429,6 +5429,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL hr + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -5611,10 +5615,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -5652,6 +5652,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL hr + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ppd_join_filter.q.out ql/src/test/results/clientpositive/ppd_join_filter.q.out index 15a2a7a..091406c 100644 --- ql/src/test/results/clientpositive/ppd_join_filter.q.out +++ ql/src/test/results/clientpositive/ppd_join_filter.q.out @@ -27,6 +27,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k2 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k3 TOK_FROM TOK_JOIN TOK_TABREF @@ -35,10 +55,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -80,6 +96,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src b and = @@ -97,26 +117,6 @@ TOK_QUERY b k1 5 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k2 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k3 STAGE DEPENDENCIES: @@ -440,6 +440,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k2 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k3 TOK_FROM TOK_JOIN TOK_TABREF @@ -448,10 +468,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -493,6 +509,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src b and = @@ -510,26 +530,6 @@ TOK_QUERY b k1 5 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k2 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k3 STAGE DEPENDENCIES: @@ -853,6 +853,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k2 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k3 TOK_FROM TOK_JOIN TOK_TABREF @@ -861,10 +881,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -906,6 +922,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src b and = @@ -923,26 +943,6 @@ TOK_QUERY b k1 5 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k2 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k3 STAGE DEPENDENCIES: @@ -1262,6 +1262,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k2 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k3 TOK_FROM TOK_JOIN TOK_TABREF @@ -1270,10 +1290,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1315,6 +1331,10 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src b and = @@ -1332,26 +1352,6 @@ TOK_QUERY b k1 5 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k2 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k3 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ppd_union_view.q.out ql/src/test/results/clientpositive/ppd_union_view.q.out index 405c912..b377475 100644 --- ql/src/test/results/clientpositive/ppd_union_view.q.out +++ ql/src/test/results/clientpositive/ppd_union_view.q.out @@ -138,10 +138,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -154,6 +150,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2011-10-13' + TOK_FROM + TOK_TABREF + TOK_TABNAME + t1 STAGE DEPENDENCIES: @@ -436,10 +436,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - t1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -452,6 +448,10 @@ TOK_QUERY TOK_TABLE_OR_COL ds '2011-10-15' + TOK_FROM + TOK_TABREF + TOK_TABNAME + t1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ppd_vc.q.out ql/src/test/results/clientpositive/ppd_vc.q.out index 918e1a9..12387a3 100644 --- ql/src/test/results/clientpositive/ppd_vc.q.out +++ ql/src/test/results/clientpositive/ppd_vc.q.out @@ -11,10 +11,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -27,6 +23,10 @@ TOK_QUERY TOK_TABLE_OR_COL BLOCK__OFFSET__INSIDE__FILE 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -334,6 +334,25 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + b + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + ds + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + hr + TOK_TABSORTCOLNAMEASC + TOK_TABLE_OR_COL + BLOCK__OFFSET__INSIDE__FILE TOK_FROM TOK_JOIN TOK_TABREF @@ -342,10 +361,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -361,6 +376,10 @@ TOK_QUERY TOK_TABLE_OR_COL BLOCK__OFFSET__INSIDE__FILE 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart b AND = @@ -378,25 +397,6 @@ TOK_QUERY b BLOCK__OFFSET__INSIDE__FILE 50 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_TABNAME - b - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - TOK_TABLE_OR_COL - ds - TOK_TABSORTCOLNAMEASC - TOK_TABLE_OR_COL - hr - TOK_TABSORTCOLNAMEASC - TOK_TABLE_OR_COL - BLOCK__OFFSET__INSIDE__FILE STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/ppr_allchildsarenull.q.out ql/src/test/results/clientpositive/ppr_allchildsarenull.q.out index 632fd4b..fa5b85d 100644 --- ql/src/test/results/clientpositive/ppr_allchildsarenull.q.out +++ ql/src/test/results/clientpositive/ppr_allchildsarenull.q.out @@ -19,10 +19,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -58,6 +54,10 @@ TOK_QUERY 1 0 0 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: @@ -251,10 +251,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart TOK_INSERT TOK_DESTINATION TOK_DIR @@ -290,6 +286,10 @@ TOK_QUERY 1 0 0 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/push_or.q.out ql/src/test/results/clientpositive/push_or.q.out index fe7ca60..bca9323 100644 --- ql/src/test/results/clientpositive/push_or.q.out +++ ql/src/test/results/clientpositive/push_or.q.out @@ -37,10 +37,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - push_or TOK_INSERT TOK_DESTINATION TOK_DIR @@ -72,6 +68,10 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + push_or STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/rand_partitionpruner1.q.out ql/src/test/results/clientpositive/rand_partitionpruner1.q.out index 1c49a25..5959c6e 100644 --- ql/src/test/results/clientpositive/rand_partitionpruner1.q.out +++ ql/src/test/results/clientpositive/rand_partitionpruner1.q.out @@ -7,10 +7,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -24,6 +20,10 @@ TOK_QUERY rand 1 0.1 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/rand_partitionpruner2.q.out ql/src/test/results/clientpositive/rand_partitionpruner2.q.out index 2425d73..bf0e997 100644 --- ql/src/test/results/clientpositive/rand_partitionpruner2.q.out +++ ql/src/test/results/clientpositive/rand_partitionpruner2.q.out @@ -21,11 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_TAB @@ -49,6 +44,11 @@ TOK_QUERY a ds '2008-04-08' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/rand_partitionpruner3.q.out ql/src/test/results/clientpositive/rand_partitionpruner3.q.out index 93df215..ad58177 100644 --- ql/src/test/results/clientpositive/rand_partitionpruner3.q.out +++ ql/src/test/results/clientpositive/rand_partitionpruner3.q.out @@ -9,11 +9,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -54,6 +49,11 @@ TOK_QUERY a hr '%2' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: @@ -179,11 +179,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -218,6 +213,11 @@ TOK_QUERY a hr '%2' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/reduce_deduplicate.q.out ql/src/test/results/clientpositive/reduce_deduplicate.q.out index bd86471..3a9a58b 100644 --- ql/src/test/results/clientpositive/reduce_deduplicate.q.out +++ ql/src/test/results/clientpositive/reduce_deduplicate.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -32,6 +28,10 @@ TOK_QUERY TOK_CLUSTERBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -250,16 +250,75 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + complex_tbl_1 + TOK_PARTSPEC + TOK_PARTVAL + ds + '2010-03-29' + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + s2 TOK_FROM TOK_SUBQUERY TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + TOK_TABLE_OR_COL + aid + TOK_TABLE_OR_COL + bid + TOK_TABLE_OR_COL + t + TOK_TABLE_OR_COL + ctime + TOK_TABLE_OR_COL + etime + TOK_TABLE_OR_COL + l + TOK_TABLE_OR_COL + et + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_TABCOLLIST + TOK_TABCOL + aid + TOK_STRING + TOK_TABCOL + bid + TOK_STRING + TOK_TABCOL + t + TOK_INT + TOK_TABCOL + ctime + TOK_STRING + TOK_TABCOL + etime + TOK_BIGINT + TOK_TABCOL + l + TOK_STRING + TOK_TABCOL + et + TOK_STRING TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - complex_tbl_2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -307,71 +366,12 @@ TOK_QUERY TOK_CLUSTERBY TOK_TABLE_OR_COL bid + TOK_FROM + TOK_TABREF + TOK_TABNAME + complex_tbl_2 s - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - TOK_TABLE_OR_COL - aid - TOK_TABLE_OR_COL - bid - TOK_TABLE_OR_COL - t - TOK_TABLE_OR_COL - ctime - TOK_TABLE_OR_COL - etime - TOK_TABLE_OR_COL - l - TOK_TABLE_OR_COL - et - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_TABCOLLIST - TOK_TABCOL - aid - TOK_STRING - TOK_TABCOL - bid - TOK_STRING - TOK_TABCOL - t - TOK_INT - TOK_TABCOL - ctime - TOK_STRING - TOK_TABCOL - etime - TOK_BIGINT - TOK_TABCOL - l - TOK_STRING - TOK_TABCOL - et - TOK_STRING s2 - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - complex_tbl_1 - TOK_PARTSPEC - TOK_PARTVAL - ds - '2010-03-29' - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_TABNAME - s2 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/regexp_extract.q.out ql/src/test/results/clientpositive/regexp_extract.q.out index fb7bc5a..e543d77 100644 --- ql/src/test/results/clientpositive/regexp_extract.q.out +++ ql/src/test/results/clientpositive/regexp_extract.q.out @@ -19,70 +19,72 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - + - 1 - 2 - + - 3 - 4 - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_CLUSTERBY - TOK_TABLE_OR_COL - key + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + + + 1 + 2 + + + 3 + 4 + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_CLUSTERBY + TOK_TABLE_OR_COL + key tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - key - TOK_SELEXPR - TOK_FUNCTION - regexp_extract + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + key + TOK_SELEXPR + TOK_FUNCTION + regexp_extract + . + TOK_TABLE_OR_COL + tmap + value + 'val_(\\d+\\t\\d+)' + 1 + TOK_WHERE + < . TOK_TABLE_OR_COL tmap - value - 'val_(\\d+\\t\\d+)' - 1 - TOK_WHERE - < - . - TOK_TABLE_OR_COL - tmap - key - 100 + key + 100 STAGE DEPENDENCIES: @@ -335,69 +337,71 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - + - 1 - 2 - + - 3 - 4 - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_CLUSTERBY - TOK_TABLE_OR_COL - key + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + + + 1 + 2 + + + 3 + 4 + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_CLUSTERBY + TOK_TABLE_OR_COL + key tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - key - TOK_SELEXPR - TOK_FUNCTION - regexp_extract + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + key + TOK_SELEXPR + TOK_FUNCTION + regexp_extract + . + TOK_TABLE_OR_COL + tmap + value + 'val_(\\d+\\t\\d+)' + TOK_WHERE + < . TOK_TABLE_OR_COL tmap - value - 'val_(\\d+\\t\\d+)' - TOK_WHERE - < - . - TOK_TABLE_OR_COL - tmap - key - 100 + key + 100 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/router_join_ppr.q.out ql/src/test/results/clientpositive/router_join_ppr.q.out index 097c94b..526e3cc 100644 --- ql/src/test/results/clientpositive/router_join_ppr.q.out +++ ql/src/test/results/clientpositive/router_join_ppr.q.out @@ -19,7 +19,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_RIGHTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -45,59 +45,60 @@ TOK_QUERY b ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < - . - TOK_TABLE_OR_COL - b - key - 25 + 25 STAGE DEPENDENCIES: @@ -491,7 +492,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_RIGHTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -517,59 +518,60 @@ TOK_QUERY a ds '2008-04-08' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < - . - TOK_TABLE_OR_COL - b - key - 25 + 25 STAGE DEPENDENCIES: @@ -860,7 +862,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_RIGHTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -879,66 +881,67 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a - key - 10 - < - . - TOK_TABLE_OR_COL - a + b key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < + 25 + = . TOK_TABLE_OR_COL b - key - 25 - = - . - TOK_TABLE_OR_COL - b - ds - '2008-04-08' + ds + '2008-04-08' STAGE DEPENDENCIES: @@ -1229,7 +1232,7 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_RIGHTOUTERJOIN TOK_TABREF TOK_TABNAME @@ -1248,66 +1251,67 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - value - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value - TOK_WHERE - AND + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + value + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value + TOK_WHERE AND AND AND + AND + > + . + TOK_TABLE_OR_COL + a + key + 10 + < + . + TOK_TABLE_OR_COL + a + key + 20 > . TOK_TABLE_OR_COL - a + b key - 10 - < - . - TOK_TABLE_OR_COL - a - key - 20 - > + 15 + < . TOK_TABLE_OR_COL b key - 15 - < + 25 + = . TOK_TABLE_OR_COL - b - key - 25 - = - . - TOK_TABLE_OR_COL - a - ds - '2008-04-08' + a + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample1.q.out ql/src/test/results/clientpositive/sample1.q.out index 736b722..e473328 100644 --- ql/src/test/results/clientpositive/sample1.q.out +++ ql/src/test/results/clientpositive/sample1.q.out @@ -21,16 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - TOK_TABLEBUCKETSAMPLE - 1 - 1 - TOK_FUNCTION - rand - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -55,6 +45,16 @@ TOK_QUERY s hr '11' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + TOK_TABLEBUCKETSAMPLE + 1 + 1 + TOK_FUNCTION + rand + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample10.q.out ql/src/test/results/clientpositive/sample10.q.out index 6de9ea8..2e74bd3 100644 --- ql/src/test/results/clientpositive/sample10.q.out +++ ql/src/test/results/clientpositive/sample10.q.out @@ -46,15 +46,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpartbucket - TOK_TABLEBUCKETSAMPLE - 1 - 4 - TOK_TABLE_OR_COL - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -79,6 +70,15 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL ds + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpartbucket + TOK_TABLEBUCKETSAMPLE + 1 + 4 + TOK_TABLE_OR_COL + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample2.q.out ql/src/test/results/clientpositive/sample2.q.out index 6e42fe7..5053799 100644 --- ql/src/test/results/clientpositive/sample2.q.out +++ ql/src/test/results/clientpositive/sample2.q.out @@ -21,14 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 2 - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -39,6 +31,14 @@ TOK_QUERY TOK_ALLCOLREF TOK_TABNAME s + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 2 + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample4.q.out ql/src/test/results/clientpositive/sample4.q.out index 61a8cc0..7a2d239 100644 --- ql/src/test/results/clientpositive/sample4.q.out +++ ql/src/test/results/clientpositive/sample4.q.out @@ -21,16 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 2 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -41,6 +31,16 @@ TOK_QUERY TOK_ALLCOLREF TOK_TABNAME s + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 2 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample5.q.out ql/src/test/results/clientpositive/sample5.q.out index 7e84535..6f73a25 100644 --- ql/src/test/results/clientpositive/sample5.q.out +++ ql/src/test/results/clientpositive/sample5.q.out @@ -19,16 +19,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 5 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -39,6 +29,16 @@ TOK_QUERY TOK_ALLCOLREF TOK_TABNAME s + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 5 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample6.q.out ql/src/test/results/clientpositive/sample6.q.out index 155cdea..f5a1b3e 100644 --- ql/src/test/results/clientpositive/sample6.q.out +++ ql/src/test/results/clientpositive/sample6.q.out @@ -19,16 +19,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 4 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -39,6 +29,16 @@ TOK_QUERY TOK_ALLCOLREF TOK_TABNAME s + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 4 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -602,16 +602,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 4 - 4 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -628,6 +618,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 4 + 4 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -999,16 +999,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 2 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1025,6 +1015,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 2 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -1650,16 +1650,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 3 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1676,6 +1666,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 3 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -2144,16 +2144,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 2 - 3 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2170,6 +2160,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 2 + 3 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -2624,16 +2624,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket2 - TOK_TABLEBUCKETSAMPLE - 1 - 2 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2650,6 +2640,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket2 + TOK_TABLEBUCKETSAMPLE + 1 + 2 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -2951,16 +2951,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket2 - TOK_TABLEBUCKETSAMPLE - 2 - 4 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -2977,6 +2967,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket2 + TOK_TABLEBUCKETSAMPLE + 2 + 4 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: @@ -3155,16 +3155,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - empty_bucket - TOK_TABLEBUCKETSAMPLE - 1 - 2 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_DIR @@ -3181,6 +3171,16 @@ TOK_QUERY TOK_TABSORTCOLNAMEASC TOK_TABLE_OR_COL value + TOK_FROM + TOK_TABREF + TOK_TABNAME + empty_bucket + TOK_TABLEBUCKETSAMPLE + 1 + 2 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample7.q.out ql/src/test/results/clientpositive/sample7.q.out index 72ed459..8ac1d1b 100644 --- ql/src/test/results/clientpositive/sample7.q.out +++ ql/src/test/results/clientpositive/sample7.q.out @@ -21,16 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcbucket - TOK_TABLEBUCKETSAMPLE - 1 - 4 - TOK_TABLE_OR_COL - key - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -48,6 +38,16 @@ TOK_QUERY s key 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcbucket + TOK_TABLEBUCKETSAMPLE + 1 + 4 + TOK_TABLE_OR_COL + key + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample8.q.out ql/src/test/results/clientpositive/sample8.q.out index e0c0f9e..40e9337 100644 --- ql/src/test/results/clientpositive/sample8.q.out +++ ql/src/test/results/clientpositive/sample8.q.out @@ -19,26 +19,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcpart - TOK_TABLEBUCKETSAMPLE - 1 - 1 - TOK_TABLE_OR_COL - key - s - TOK_TABREF - TOK_TABNAME - srcpart - TOK_TABLEBUCKETSAMPLE - 1 - 10 - TOK_TABLE_OR_COL - key - t TOK_INSERT TOK_DESTINATION TOK_DIR @@ -82,6 +62,26 @@ TOK_QUERY s hr '11' + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcpart + TOK_TABLEBUCKETSAMPLE + 1 + 1 + TOK_TABLE_OR_COL + key + s + TOK_TABREF + TOK_TABNAME + srcpart + TOK_TABLEBUCKETSAMPLE + 1 + 10 + TOK_TABLE_OR_COL + key + t STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sample9.q.out ql/src/test/results/clientpositive/sample9.q.out index 1dba5e1..d3efdcc 100644 --- ql/src/test/results/clientpositive/sample9.q.out +++ ql/src/test/results/clientpositive/sample9.q.out @@ -9,9 +9,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + s TOK_FROM TOK_SUBQUERY TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_TABNAME + a TOK_FROM TOK_TABREF TOK_TABNAME @@ -22,25 +40,7 @@ TOK_QUERY TOK_TABLE_OR_COL key a - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_TABNAME - a s - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_TABNAME - s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/serde_user_properties.q.out ql/src/test/results/clientpositive/serde_user_properties.q.out index 8022177..2574365 100644 --- ql/src/test/results/clientpositive/serde_user_properties.q.out +++ ql/src/test/results/clientpositive/serde_user_properties.q.out @@ -9,10 +9,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -21,6 +17,10 @@ TOK_QUERY TOK_SELEXPR TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -123,11 +123,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -138,6 +133,11 @@ TOK_QUERY TOK_TABLE_OR_COL a key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + a STAGE DEPENDENCIES: @@ -240,14 +240,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_PERCENT - 1 - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -258,6 +250,14 @@ TOK_QUERY TOK_TABLE_OR_COL a key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_PERCENT + 1 + a STAGE DEPENDENCIES: @@ -364,6 +364,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key TOK_FROM TOK_TABREF TOK_TABNAME @@ -373,14 +381,6 @@ TOK_QUERY TOK_TABLEPROPERTY 'user.defined.key' 'some.value' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key STAGE DEPENDENCIES: @@ -485,6 +485,14 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TABLE_OR_COL + key TOK_FROM TOK_TABREF TOK_TABNAME @@ -497,14 +505,6 @@ TOK_QUERY TOK_TABLESPLITSAMPLE TOK_PERCENT 1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TABLE_OR_COL - key STAGE DEPENDENCIES: @@ -613,16 +613,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLEPROPERTIES - TOK_TABLEPROPLIST - TOK_TABLEPROPERTY - 'user.defined.key' - 'some.value' - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -633,6 +623,16 @@ TOK_QUERY TOK_TABLE_OR_COL a key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLEPROPERTIES + TOK_TABLEPROPLIST + TOK_TABLEPROPERTY + 'user.defined.key' + 'some.value' + a STAGE DEPENDENCIES: @@ -737,6 +737,16 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key TOK_FROM TOK_TABREF TOK_TABNAME @@ -750,16 +760,6 @@ TOK_QUERY TOK_PERCENT 1 a - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/smb_mapjoin9.q.out ql/src/test/results/clientpositive/smb_mapjoin9.q.out index 9500ba4..d272184 100644 --- ql/src/test/results/clientpositive/smb_mapjoin9.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin9.q.out @@ -31,25 +31,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - hive_test_smb_bucket1 - a - TOK_TABREF - TOK_TABNAME - hive_test_smb_bucket2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -103,6 +84,25 @@ TOK_QUERY TOK_TABLE_OR_COL b key + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + hive_test_smb_bucket1 + a + TOK_TABREF + TOK_TABNAME + hive_test_smb_bucket2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -150,25 +150,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - hive_test_smb_bucket1 - a - TOK_TABREF - TOK_TABNAME - hive_test_smb_bucket2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -222,6 +203,25 @@ TOK_QUERY TOK_TABLE_OR_COL b key + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + hive_test_smb_bucket1 + a + TOK_TABREF + TOK_TABNAME + hive_test_smb_bucket2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/smb_mapjoin_11.q.out ql/src/test/results/clientpositive/smb_mapjoin_11.q.out index f9a7aa2..336def2 100644 --- ql/src/test/results/clientpositive/smb_mapjoin_11.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin_11.q.out @@ -59,6 +59,31 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + test_table3 + TOK_PARTSPEC + TOK_PARTVAL + ds + '1' + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value TOK_FROM TOK_JOIN TOK_TABREF @@ -92,31 +117,6 @@ TOK_QUERY b ds '1' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - test_table3 - TOK_PARTSPEC - TOK_PARTVAL - ds - '1' - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/smb_mapjoin_12.q.out ql/src/test/results/clientpositive/smb_mapjoin_12.q.out index 6d3c37e..06fe0b8 100644 --- ql/src/test/results/clientpositive/smb_mapjoin_12.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin_12.q.out @@ -71,6 +71,31 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + test_table3 + TOK_PARTSPEC + TOK_PARTVAL + ds + '1' + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + value TOK_FROM TOK_JOIN TOK_TABREF @@ -104,31 +129,6 @@ TOK_QUERY b ds '1' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - test_table3 - TOK_PARTSPEC - TOK_PARTVAL - ds - '1' - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - value STAGE DEPENDENCIES: @@ -328,6 +328,37 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + test_table3 + TOK_PARTSPEC + TOK_PARTVAL + ds + '2' + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + key + TOK_SELEXPR + TOK_FUNCTION + concat + . + TOK_TABLE_OR_COL + a + value + . + TOK_TABLE_OR_COL + b + value TOK_FROM TOK_JOIN TOK_TABREF @@ -361,37 +392,6 @@ TOK_QUERY b ds '1' - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - test_table3 - TOK_PARTSPEC - TOK_PARTVAL - ds - '2' - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - key - TOK_SELEXPR - TOK_FUNCTION - concat - . - TOK_TABLE_OR_COL - a - value - . - TOK_TABLE_OR_COL - b - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/smb_mapjoin_13.q.out ql/src/test/results/clientpositive/smb_mapjoin_13.q.out index fb80ee4..1a7b350 100644 --- ql/src/test/results/clientpositive/smb_mapjoin_13.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin_13.q.out @@ -79,25 +79,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - test_table1 - a - TOK_TABREF - TOK_TABNAME - test_table2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - value TOK_INSERT TOK_DESTINATION TOK_DIR @@ -118,6 +99,25 @@ TOK_QUERY key TOK_LIMIT 10 + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + test_table1 + a + TOK_TABREF + TOK_TABNAME + test_table2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + value STAGE DEPENDENCIES: @@ -276,25 +276,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - test_table3 - a - TOK_TABREF - TOK_TABNAME - test_table4 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - value TOK_INSERT TOK_DESTINATION TOK_DIR @@ -315,6 +296,25 @@ TOK_QUERY key TOK_LIMIT 10 + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + test_table3 + a + TOK_TABREF + TOK_TABNAME + test_table4 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/smb_mapjoin_15.q.out ql/src/test/results/clientpositive/smb_mapjoin_15.q.out index 2424be8..f3ef112 100644 --- ql/src/test/results/clientpositive/smb_mapjoin_15.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin_15.q.out @@ -51,25 +51,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - test_table1 - a - TOK_TABREF - TOK_TABNAME - test_table2 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_DIR @@ -90,6 +71,25 @@ TOK_QUERY key TOK_LIMIT 10 + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + test_table1 + a + TOK_TABREF + TOK_TABNAME + test_table2 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -300,6 +300,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + a + key + TOK_LIMIT + 10 TOK_FROM TOK_JOIN TOK_TABREF @@ -329,26 +349,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key2 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_ALLCOLREF - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - a - key - TOK_LIMIT - 10 STAGE DEPENDENCIES: @@ -507,6 +507,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + a + key + TOK_LIMIT + 10 TOK_FROM TOK_JOIN TOK_TABREF @@ -536,26 +556,6 @@ TOK_QUERY TOK_TABLE_OR_COL b key - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_ALLCOLREF - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - a - key - TOK_LIMIT - 10 STAGE DEPENDENCIES: @@ -714,6 +714,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_ALLCOLREF + TOK_ORDERBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + a + key + TOK_LIMIT + 10 TOK_FROM TOK_JOIN TOK_TABREF @@ -743,26 +763,6 @@ TOK_QUERY TOK_TABLE_OR_COL b value - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_ALLCOLREF - TOK_ORDERBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - a - key - TOK_LIMIT - 10 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out index dc76dff..bf26776 100644 --- ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out +++ ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out @@ -63,6 +63,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -96,19 +109,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out index b41cf22..a51224c 100644 --- ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out +++ ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out @@ -63,6 +63,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -96,19 +109,6 @@ TOK_QUERY b part '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out index 1354e2d..941e9b5 100644 --- ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out +++ ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out @@ -99,6 +99,19 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_HINTLIST + TOK_HINT + TOK_MAPJOIN + TOK_HINTARGLIST + b + TOK_SELEXPR + TOK_FUNCTIONSTAR + count TOK_FROM TOK_JOIN TOK_TABREF @@ -132,19 +145,6 @@ TOK_QUERY TOK_TABLE_OR_COL b part - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_HINTLIST - TOK_HINT - TOK_MAPJOIN - TOK_HINTARGLIST - b - TOK_SELEXPR - TOK_FUNCTIONSTAR - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/stats0.q.out ql/src/test/results/clientpositive/stats0.q.out index 1d6e3f7..dadb7e9 100644 --- ql/src/test/results/clientpositive/stats0.q.out +++ ql/src/test/results/clientpositive/stats0.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -29,6 +25,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -1332,10 +1332,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -1344,6 +1340,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/stats11.q.out ql/src/test/results/clientpositive/stats11.q.out index ea0d589..b1bbef3 100644 --- ql/src/test/results/clientpositive/stats11.q.out +++ ql/src/test/results/clientpositive/stats11.q.out @@ -317,25 +317,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -369,6 +350,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: @@ -864,25 +864,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin - a - TOK_TABREF - TOK_TABNAME - srcbucket_mapjoin_part - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key TOK_INSERT TOK_DESTINATION TOK_TAB @@ -916,6 +897,25 @@ TOK_QUERY b ds "2008-04-08" + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin + a + TOK_TABREF + TOK_TABNAME + srcbucket_mapjoin_part + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/subquery_in_having.q.out ql/src/test/results/clientpositive/subquery_in_having.q.out index 32d47b5..9e77c1d 100644 --- ql/src/test/results/clientpositive/subquery_in_having.q.out +++ ql/src/test/results/clientpositive/subquery_in_having.q.out @@ -363,33 +363,33 @@ STAGE PLANS: predicate: ((key > '9') and value is not null) (type: boolean) Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: value (type: string), key (type: string) - outputColumnNames: value, key + expressions: value (type: string) + outputColumnNames: value Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() - keys: value (type: string), key (type: string) + keys: value (type: string) mode: hash - outputColumnNames: _col0, _col1, _col2 + outputColumnNames: _col0, _col1 Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: bigint) + value expressions: _col1 (type: bigint) Reduce Operator Tree: Group By Operator aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string), KEY._col1 (type: string) + keys: KEY._col0 (type: string) mode: mergepartial - outputColumnNames: _col0, _col1, _col2 + outputColumnNames: _col0, _col1 Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: _col2 is not null (type: boolean) + predicate: _col1 is not null (type: boolean) Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: _col2 (type: bigint), _col0 (type: string) + expressions: _col1 (type: bigint), _col0 (type: string) outputColumnNames: _col0, _col1 Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Group By Operator diff --git ql/src/test/results/clientpositive/subquery_unqualcolumnrefs.q.out ql/src/test/results/clientpositive/subquery_unqualcolumnrefs.q.out index a34dae6..f4a1f30 100644 --- ql/src/test/results/clientpositive/subquery_unqualcolumnrefs.q.out +++ ql/src/test/results/clientpositive/subquery_unqualcolumnrefs.q.out @@ -728,33 +728,33 @@ STAGE PLANS: predicate: ((key > '9') and value is not null) (type: boolean) Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: value (type: string), key (type: string) - outputColumnNames: value, key + expressions: value (type: string) + outputColumnNames: value Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() - keys: value (type: string), key (type: string) + keys: value (type: string) mode: hash - outputColumnNames: _col0, _col1, _col2 + outputColumnNames: _col0, _col1 Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 5 Data size: 1002 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: bigint) + value expressions: _col1 (type: bigint) Reduce Operator Tree: Group By Operator aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string), KEY._col1 (type: string) + keys: KEY._col0 (type: string) mode: mergepartial - outputColumnNames: _col0, _col1, _col2 + outputColumnNames: _col0, _col1 Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: _col2 is not null (type: boolean) + predicate: _col1 is not null (type: boolean) Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: _col2 (type: bigint), _col0 (type: string) + expressions: _col1 (type: bigint), _col0 (type: string) outputColumnNames: _col0, _col1 Statistics: Num rows: 2 Data size: 400 Basic stats: COMPLETE Column stats: NONE Group By Operator diff --git ql/src/test/results/clientpositive/tez/bucket2.q.out ql/src/test/results/clientpositive/tez/bucket2.q.out index 4121b05..a5ee708 100644 --- ql/src/test/results/clientpositive/tez/bucket2.q.out +++ ql/src/test/results/clientpositive/tez/bucket2.q.out @@ -21,10 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -33,6 +29,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/bucket3.q.out ql/src/test/results/clientpositive/tez/bucket3.q.out index 3904d98..dec66da 100644 --- ql/src/test/results/clientpositive/tez/bucket3.q.out +++ ql/src/test/results/clientpositive/tez/bucket3.q.out @@ -21,10 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -37,6 +33,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/bucket4.q.out ql/src/test/results/clientpositive/tez/bucket4.q.out index 3990d60..ea5d130 100644 --- ql/src/test/results/clientpositive/tez/bucket4.q.out +++ ql/src/test/results/clientpositive/tez/bucket4.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -29,6 +25,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/ctas.q.out ql/src/test/results/clientpositive/tez/ctas.q.out index 5ff7981..30e4ace 100644 --- ql/src/test/results/clientpositive/tez/ctas.q.out +++ ql/src/test/results/clientpositive/tez/ctas.q.out @@ -684,10 +684,6 @@ TOK_CREATETABLE TOK_FILEFORMAT_GENERIC textfile TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -708,6 +704,10 @@ TOK_CREATETABLE value TOK_LIMIT 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/disable_merge_for_bucketing.q.out ql/src/test/results/clientpositive/tez/disable_merge_for_bucketing.q.out index 29545dc..f4180fd 100644 --- ql/src/test/results/clientpositive/tez/disable_merge_for_bucketing.q.out +++ ql/src/test/results/clientpositive/tez/disable_merge_for_bucketing.q.out @@ -17,10 +17,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_TAB @@ -29,6 +25,10 @@ TOK_QUERY TOK_SELECT TOK_SELEXPR TOK_ALLCOLREF + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/filter_join_breaktask.q.out ql/src/test/results/clientpositive/tez/filter_join_breaktask.q.out index eae733f..65c2c50 100644 --- ql/src/test/results/clientpositive/tez/filter_join_breaktask.q.out +++ ql/src/test/results/clientpositive/tez/filter_join_breaktask.q.out @@ -31,6 +31,21 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + f + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + g + value TOK_FROM TOK_JOIN TOK_JOIN @@ -113,21 +128,6 @@ TOK_QUERY m value '' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - f - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - g - value STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/sample1.q.out ql/src/test/results/clientpositive/tez/sample1.q.out index 157be04..9253d09 100644 --- ql/src/test/results/clientpositive/tez/sample1.q.out +++ ql/src/test/results/clientpositive/tez/sample1.q.out @@ -21,16 +21,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - srcpart - TOK_TABLEBUCKETSAMPLE - 1 - 1 - TOK_FUNCTION - rand - s TOK_INSERT TOK_DESTINATION TOK_TAB @@ -55,6 +45,16 @@ TOK_QUERY s hr '11' + TOK_FROM + TOK_TABREF + TOK_TABNAME + srcpart + TOK_TABLEBUCKETSAMPLE + 1 + 1 + TOK_FUNCTION + rand + s STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/transform_ppr1.q.out ql/src/test/results/clientpositive/tez/transform_ppr1.q.out index 0de3254..1a4705f 100644 --- ql/src/test/results/clientpositive/tez/transform_ppr1.q.out +++ ql/src/test/results/clientpositive/tez/transform_ppr1.q.out @@ -19,76 +19,78 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + ds + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_ALIASLIST ds - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_ALIASLIST - ds - tkey - tvalue - TOK_CLUSTERBY - TOK_TABLE_OR_COL - tkey + tkey + tvalue + TOK_CLUSTERBY + TOK_TABLE_OR_COL + tkey tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tkey - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tvalue - TOK_WHERE - AND - < + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR . TOK_TABLE_OR_COL tmap tkey - 100 - = + TOK_SELEXPR . TOK_TABLE_OR_COL tmap - ds - '2008-04-08' + tvalue + TOK_WHERE + AND + < + . + TOK_TABLE_OR_COL + tmap + tkey + 100 + = + . + TOK_TABLE_OR_COL + tmap + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/tez/transform_ppr2.q.out ql/src/test/results/clientpositive/tez/transform_ppr2.q.out index 9e96116..210ef27 100644 --- ql/src/test/results/clientpositive/tez/transform_ppr2.q.out +++ ql/src/test/results/clientpositive/tez/transform_ppr2.q.out @@ -21,76 +21,78 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + ds + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_ALIASLIST ds - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_ALIASLIST + tkey + tvalue + TOK_WHERE + = + . + TOK_TABLE_OR_COL + src ds - tkey - tvalue - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_CLUSTERBY - TOK_TABLE_OR_COL - tkey + '2008-04-08' + TOK_CLUSTERBY + TOK_TABLE_OR_COL + tkey tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tkey - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tvalue - TOK_WHERE - < - . - TOK_TABLE_OR_COL - tmap - tkey - 100 + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + tkey + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + tvalue + TOK_WHERE + < + . + TOK_TABLE_OR_COL + tmap + tkey + 100 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/transform_ppr1.q.out ql/src/test/results/clientpositive/transform_ppr1.q.out index 6f908fa..98e0beb 100644 --- ql/src/test/results/clientpositive/transform_ppr1.q.out +++ ql/src/test/results/clientpositive/transform_ppr1.q.out @@ -19,76 +19,78 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + ds + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_ALIASLIST ds - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_ALIASLIST - ds - tkey - tvalue - TOK_CLUSTERBY - TOK_TABLE_OR_COL - tkey + tkey + tvalue + TOK_CLUSTERBY + TOK_TABLE_OR_COL + tkey tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tkey - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tvalue - TOK_WHERE - AND - < + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR . TOK_TABLE_OR_COL tmap tkey - 100 - = + TOK_SELEXPR . TOK_TABLE_OR_COL tmap - ds - '2008-04-08' + tvalue + TOK_WHERE + AND + < + . + TOK_TABLE_OR_COL + tmap + tkey + 100 + = + . + TOK_TABLE_OR_COL + tmap + ds + '2008-04-08' STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/transform_ppr2.q.out ql/src/test/results/clientpositive/transform_ppr2.q.out index 9285151..72c8be6 100644 --- ql/src/test/results/clientpositive/transform_ppr2.q.out +++ ql/src/test/results/clientpositive/transform_ppr2.q.out @@ -21,76 +21,78 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_SUBQUERY TOK_QUERY - TOK_FROM + TOK_FROM_BASE TOK_TABREF TOK_TABNAME srcpart src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_TRANSFORM - TOK_EXPLIST - . - TOK_TABLE_OR_COL - src + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_TRANSFORM + TOK_EXPLIST + . + TOK_TABLE_OR_COL + src + ds + . + TOK_TABLE_OR_COL + src + key + . + TOK_TABLE_OR_COL + src + value + TOK_SERDE + TOK_RECORDWRITER + 'cat' + TOK_SERDE + TOK_RECORDREADER + TOK_ALIASLIST ds - . - TOK_TABLE_OR_COL - src - key - . - TOK_TABLE_OR_COL - src - value - TOK_SERDE - TOK_RECORDWRITER - 'cat' - TOK_SERDE - TOK_RECORDREADER - TOK_ALIASLIST + tkey + tvalue + TOK_WHERE + = + . + TOK_TABLE_OR_COL + src ds - tkey - tvalue - TOK_WHERE - = - . - TOK_TABLE_OR_COL - src - ds - '2008-04-08' - TOK_CLUSTERBY - TOK_TABLE_OR_COL - tkey + '2008-04-08' + TOK_CLUSTERBY + TOK_TABLE_OR_COL + tkey tmap - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tkey - TOK_SELEXPR - . - TOK_TABLE_OR_COL - tmap - tvalue - TOK_WHERE - < - . - TOK_TABLE_OR_COL - tmap - tkey - 100 + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + tkey + TOK_SELEXPR + . + TOK_TABLE_OR_COL + tmap + tvalue + TOK_WHERE + < + . + TOK_TABLE_OR_COL + tmap + tkey + 100 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/truncate_column_list_bucket.q.out ql/src/test/results/clientpositive/truncate_column_list_bucket.q.out index fc4a30b..35a9938 100644 --- ql/src/test/results/clientpositive/truncate_column_list_bucket.q.out +++ ql/src/test/results/clientpositive/truncate_column_list_bucket.q.out @@ -70,10 +70,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - test_tab TOK_INSERT TOK_DESTINATION TOK_DIR @@ -91,6 +87,10 @@ TOK_QUERY TOK_TABLE_OR_COL key '484' + TOK_FROM + TOK_TABREF + TOK_TABNAME + test_tab STAGE DEPENDENCIES: @@ -209,10 +209,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - test_tab TOK_INSERT TOK_DESTINATION TOK_DIR @@ -230,6 +226,10 @@ TOK_QUERY TOK_TABLE_OR_COL key '0' + TOK_FROM + TOK_TABREF + TOK_TABNAME + test_tab STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/udf_explode.q.out ql/src/test/results/clientpositive/udf_explode.q.out index f1d42bb..dd9797d 100644 --- ql/src/test/results/clientpositive/udf_explode.q.out +++ ql/src/test/results/clientpositive/udf_explode.q.out @@ -15,13 +15,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -36,6 +29,13 @@ TOK_QUERY 2 3 myCol + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 STAGE DEPENDENCIES: @@ -142,31 +142,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - explode - TOK_FUNCTION - array - 1 - 2 - 3 - myCol - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -186,6 +161,31 @@ TOK_QUERY TOK_TABLE_OR_COL a myCol + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + explode + TOK_FUNCTION + array + 1 + 2 + 3 + myCol + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 + a STAGE DEPENDENCIES: @@ -355,13 +355,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -380,6 +373,13 @@ TOK_QUERY 'three' key val + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 STAGE DEPENDENCIES: @@ -486,35 +486,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - explode - TOK_FUNCTION - map - 1 - 'one' - 2 - 'two' - 3 - 'three' - key - val - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -543,6 +514,35 @@ TOK_QUERY TOK_TABLE_OR_COL a val + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + explode + TOK_FUNCTION + map + 1 + 'one' + 2 + 'two' + 3 + 'three' + key + val + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/udf_java_method.q.out ql/src/test/results/clientpositive/udf_java_method.q.out index a38ab76..2151d27 100644 --- ql/src/test/results/clientpositive/udf_java_method.q.out +++ ql/src/test/results/clientpositive/udf_java_method.q.out @@ -38,13 +38,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -96,6 +89,13 @@ TOK_QUERY "java.lang.Math" "floor" 1.9 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/udf_reflect.q.out ql/src/test/results/clientpositive/udf_reflect.q.out index 63d67cb..c3dc532 100644 --- ql/src/test/results/clientpositive/udf_reflect.q.out +++ ql/src/test/results/clientpositive/udf_reflect.q.out @@ -36,13 +36,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_TABLESPLITSAMPLE - TOK_ROWCOUNT - 1 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -102,6 +95,13 @@ TOK_QUERY TOK_TABLE_OR_COL key 16 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + TOK_TABLESPLITSAMPLE + TOK_ROWCOUNT + 1 STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/udf_reflect2.q.out ql/src/test/results/clientpositive/udf_reflect2.q.out index 0a123d7..53b76af 100644 --- ql/src/test/results/clientpositive/udf_reflect2.q.out +++ ql/src/test/results/clientpositive/udf_reflect2.q.out @@ -81,33 +81,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - TOK_INT - TOK_TABLE_OR_COL - key - key - TOK_SELEXPR - TOK_TABLE_OR_COL - value - TOK_SELEXPR - TOK_FUNCTION - TOK_TIMESTAMP - '2013-02-15 19:41:20' - ts - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -305,6 +278,33 @@ TOK_QUERY "getTime" TOK_LIMIT 5 + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + TOK_INT + TOK_TABLE_OR_COL + key + key + TOK_SELEXPR + TOK_TABLE_OR_COL + value + TOK_SELEXPR + TOK_FUNCTION + TOK_TIMESTAMP + '2013-02-15 19:41:20' + ts + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/udtf_explode.q.out ql/src/test/results/clientpositive/udtf_explode.q.out index e38710f..ae4b8a7 100644 --- ql/src/test/results/clientpositive/udtf_explode.q.out +++ ql/src/test/results/clientpositive/udtf_explode.q.out @@ -15,10 +15,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -35,6 +31,10 @@ TOK_QUERY myCol TOK_LIMIT 3 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src STAGE DEPENDENCIES: @@ -143,13 +143,28 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + myCol + TOK_SELEXPR + TOK_FUNCTION + count + 1 + TOK_GROUPBY + . + TOK_TABLE_OR_COL + a + myCol TOK_FROM TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src TOK_INSERT TOK_DESTINATION TOK_DIR @@ -166,26 +181,11 @@ TOK_QUERY myCol TOK_LIMIT 3 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src a - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - myCol - TOK_SELEXPR - TOK_FUNCTION - count - 1 - TOK_GROUPBY - . - TOK_TABLE_OR_COL - a - myCol STAGE DEPENDENCIES: @@ -460,34 +460,6 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY - TOK_FROM - TOK_SUBQUERY - TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_FUNCTION - explode - TOK_FUNCTION - map - 1 - 'one' - 2 - 'two' - 3 - 'three' - myKey - myVal - TOK_LIMIT - 3 - a TOK_INSERT TOK_DESTINATION TOK_DIR @@ -516,6 +488,34 @@ TOK_QUERY TOK_TABLE_OR_COL a myVal + TOK_FROM + TOK_SUBQUERY + TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_FUNCTION + explode + TOK_FUNCTION + map + 1 + 'one' + 2 + 'two' + 3 + 'three' + myKey + myVal + TOK_LIMIT + 3 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src + a STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/union22.q.out ql/src/test/results/clientpositive/union22.q.out index 9b5f88c..7749c19 100644 --- ql/src/test/results/clientpositive/union22.q.out +++ ql/src/test/results/clientpositive/union22.q.out @@ -81,14 +81,22 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_TAB + TOK_TABNAME + dst_union22 + TOK_PARTSPEC + TOK_PARTVAL + ds + '2' + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - dst_union22_delta TOK_INSERT TOK_DESTINATION TOK_DIR @@ -120,7 +128,47 @@ TOK_QUERY TOK_TABLE_OR_COL k0 50 + TOK_FROM + TOK_TABREF + TOK_TABNAME + dst_union22_delta TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + k1 + k1 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + a + k2 + k2 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k3 + k3 + TOK_SELEXPR + . + TOK_TABLE_OR_COL + b + k4 + k4 + TOK_WHERE + > + . + TOK_TABLE_OR_COL + a + k1 + 20 TOK_FROM TOK_LEFTOUTERJOIN TOK_TABREF @@ -129,10 +177,6 @@ TOK_QUERY a TOK_SUBQUERY TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - dst_union22_delta TOK_INSERT TOK_DESTINATION TOK_DIR @@ -150,6 +194,10 @@ TOK_QUERY TOK_TABLE_OR_COL k0 50 + TOK_FROM + TOK_TABREF + TOK_TABNAME + dst_union22_delta b and = @@ -167,55 +215,7 @@ TOK_QUERY a ds '1' - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - k1 - k1 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - a - k2 - k2 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k3 - k3 - TOK_SELEXPR - . - TOK_TABLE_OR_COL - b - k4 - k4 - TOK_WHERE - > - . - TOK_TABLE_OR_COL - a - k1 - 20 subq - TOK_INSERT - TOK_DESTINATION - TOK_TAB - TOK_TABNAME - dst_union22 - TOK_PARTSPEC - TOK_PARTVAL - ds - '2' - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/union24.q.out ql/src/test/results/clientpositive/union24.q.out index 90378df..23243ca 100644 --- ql/src/test/results/clientpositive/union24.q.out +++ ql/src/test/results/clientpositive/union24.q.out @@ -55,16 +55,27 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + count TOK_FROM TOK_SUBQUERY TOK_UNION TOK_UNION TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -81,11 +92,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME - src3 + src2 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -102,11 +113,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src3 TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src4 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -123,11 +134,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 + TOK_FROM + TOK_TABREF + TOK_TABNAME + src4 TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src5 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -149,22 +160,11 @@ TOK_QUERY TOK_GROUPBY TOK_TABLE_OR_COL key + TOK_FROM + TOK_TABREF + TOK_TABNAME + src5 s - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - count STAGE DEPENDENCIES: @@ -672,15 +672,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + count TOK_FROM TOK_SUBQUERY TOK_UNION TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -697,11 +708,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME - src3 + src2 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -718,26 +729,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 - TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - src4 - a + TOK_FROM TOK_TABREF TOK_TABNAME - src5 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key + src3 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -762,22 +758,26 @@ TOK_QUERY a key 10 + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + src4 + a + TOK_TABREF + TOK_TABNAME + src5 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key s - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - count STAGE DEPENDENCIES: @@ -1243,15 +1243,26 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + key + TOK_SELEXPR + . + TOK_TABLE_OR_COL + s + count TOK_FROM TOK_SUBQUERY TOK_UNION TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - src2 TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1268,11 +1279,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME - src3 + src2 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1289,26 +1300,11 @@ TOK_QUERY TOK_TABLE_OR_COL key 10 - TOK_QUERY - TOK_FROM - TOK_JOIN - TOK_TABREF - TOK_TABNAME - src4 - a + TOK_FROM TOK_TABREF TOK_TABNAME - src5 - b - = - . - TOK_TABLE_OR_COL - a - key - . - TOK_TABLE_OR_COL - b - key + src3 + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -1337,22 +1333,26 @@ TOK_QUERY TOK_TABLE_OR_COL a key + TOK_FROM + TOK_JOIN + TOK_TABREF + TOK_TABNAME + src4 + a + TOK_TABREF + TOK_TABNAME + src5 + b + = + . + TOK_TABLE_OR_COL + a + key + . + TOK_TABLE_OR_COL + b + key s - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - key - TOK_SELEXPR - . - TOK_TABLE_OR_COL - s - count STAGE DEPENDENCIES: diff --git ql/src/test/results/clientpositive/union_ppr.q.out ql/src/test/results/clientpositive/union_ppr.q.out index ee209c7..ef8d43d 100644 --- ql/src/test/results/clientpositive/union_ppr.q.out +++ ql/src/test/results/clientpositive/union_ppr.q.out @@ -19,15 +19,45 @@ POSTHOOK: type: QUERY ABSTRACT SYNTAX TREE: TOK_QUERY + TOK_INSERT + TOK_DESTINATION + TOK_DIR + TOK_TMP_FILE + TOK_SELECT + TOK_SELEXPR + TOK_ALLCOLREF + TOK_WHERE + = + . + TOK_TABLE_OR_COL + A + ds + '2008-04-08' + TOK_SORTBY + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + key + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + value + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + ds + TOK_TABSORTCOLNAMEASC + . + TOK_TABLE_OR_COL + A + hr TOK_FROM TOK_SUBQUERY TOK_UNION TOK_QUERY - TOK_FROM - TOK_TABREF - TOK_TABNAME - SRCPART - X TOK_INSERT TOK_DESTINATION TOK_DIR @@ -44,12 +74,12 @@ TOK_QUERY X key 100 - TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME SRCPART - Y + X + TOK_QUERY TOK_INSERT TOK_DESTINATION TOK_DIR @@ -66,42 +96,12 @@ TOK_QUERY Y key 100 + TOK_FROM + TOK_TABREF + TOK_TABNAME + SRCPART + Y A - TOK_INSERT - TOK_DESTINATION - TOK_DIR - TOK_TMP_FILE - TOK_SELECT - TOK_SELEXPR - TOK_ALLCOLREF - TOK_WHERE - = - . - TOK_TABLE_OR_COL - A - ds - '2008-04-08' - TOK_SORTBY - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - key - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - value - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - ds - TOK_TABSORTCOLNAMEASC - . - TOK_TABLE_OR_COL - A - hr STAGE DEPENDENCIES: diff --git ql/src/test/results/compiler/parse/case_sensitivity.q.out ql/src/test/results/compiler/parse/case_sensitivity.q.out index c14fb1a..67d8714 100644 --- ql/src/test/results/compiler/parse/case_sensitivity.q.out +++ ql/src/test/results/compiler/parse/case_sensitivity.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME SRC_THRIFT))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_Thrift) LINT) 1)) (TOK_SELEXPR (. ([ (. (TOK_TABLE_OR_COL src_thrift) lintstring) 0) MYSTRING))) (TOK_WHERE (> ([ (. (TOK_TABLE_OR_COL src_thrift) liNT) 0) 0)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME SRC_THRIFT))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_Thrift) LINT) 1)) (TOK_SELEXPR (. ([ (. (TOK_TABLE_OR_COL src_thrift) lintstring) 0) MYSTRING))) (TOK_WHERE (> ([ (. (TOK_TABLE_OR_COL src_thrift) liNT) 0) 0))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/cast1.q.out ql/src/test/results/compiler/parse/cast1.q.out index 5d37c9d..f7591a1 100644 --- ql/src/test/results/compiler/parse/cast1.q.out +++ ql/src/test/results/compiler/parse/cast1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (+ 3 2)) (TOK_SELEXPR (+ 3.0 2)) (TOK_SELEXPR (+ 3 2.0)) (TOK_SELEXPR (+ 3.0 2.0)) (TOK_SELEXPR (+ 3 (TOK_FUNCTION TOK_INT 2.0))) (TOK_SELEXPR (TOK_FUNCTION TOK_BOOLEAN 1)) (TOK_SELEXPR (TOK_FUNCTION TOK_INT TRUE))) (TOK_WHERE (= (. (TOK_TABLE_OR_COL src) key) 86)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (+ 3 2)) (TOK_SELEXPR (+ 3.0 2)) (TOK_SELEXPR (+ 3 2.0)) (TOK_SELEXPR (+ 3.0 2.0)) (TOK_SELEXPR (+ 3 (TOK_FUNCTION TOK_INT 2.0))) (TOK_SELEXPR (TOK_FUNCTION TOK_BOOLEAN 1)) (TOK_SELEXPR (TOK_FUNCTION TOK_INT TRUE))) (TOK_WHERE (= (. (TOK_TABLE_OR_COL src) key) 86))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby1.q.out ql/src/test/results/compiler/parse/groupby1.q.out index 1aa680c..f6f8004 100755 --- ql/src/test/results/compiler/parse/groupby1.q.out +++ ql/src/test/results/compiler/parse/groupby1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5)))) (TOK_GROUPBY (. (TOK_TABLE_OR_COL src) key)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5)))) (TOK_GROUPBY (. (TOK_TABLE_OR_COL src) key))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby2.q.out ql/src/test/results/compiler/parse/groupby2.q.out index 2c70804..c1e6e30 100755 --- ql/src/test/results/compiler/parse/groupby2.q.out +++ ql/src/test/results/compiler/parse/groupby2.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1)) (TOK_SELEXPR (TOK_FUNCTIONDI count (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION concat (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1) (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))))) (TOK_GROUPBY (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1)) (TOK_SELEXPR (TOK_FUNCTIONDI count (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION concat (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1) (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))))) (TOK_GROUPBY (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby3.q.out ql/src/test/results/compiler/parse/groupby3.q.out index 057c101..1e73ae0 100644 --- ql/src/test/results/compiler/parse/groupby3.q.out +++ ql/src/test/results/compiler/parse/groupby3.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION avg (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTIONDI avg (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION max (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION min (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5)))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION avg (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTIONDI avg (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION max (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))) (TOK_SELEXPR (TOK_FUNCTION min (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5))))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby4.q.out ql/src/test/results/compiler/parse/groupby4.q.out index d555d20..626be6c 100644 --- ql/src/test/results/compiler/parse/groupby4.q.out +++ ql/src/test/results/compiler/parse/groupby4.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1))) (TOK_GROUPBY (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1))) (TOK_GROUPBY (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) key) 1 1))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby5.q.out ql/src/test/results/compiler/parse/groupby5.q.out index 0aa6914..d5b44dd 100644 --- ql/src/test/results/compiler/parse/groupby5.q.out +++ ql/src/test/results/compiler/parse/groupby5.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5)))) (TOK_GROUPBY (. (TOK_TABLE_OR_COL src) key)))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (TOK_FUNCTION sum (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5)))) (TOK_GROUPBY (. (TOK_TABLE_OR_COL src) key))) (TOK_FROM (TOK_TABREF (TOK_TABNAME src)))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/groupby6.q.out ql/src/test/results/compiler/parse/groupby6.q.out index 52fa9b4..889a9c3 100644 --- ql/src/test/results/compiler/parse/groupby6.q.out +++ ql/src/test/results/compiler/parse/groupby6.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECTDI (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5 1))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECTDI (TOK_SELEXPR (TOK_FUNCTION substr (. (TOK_TABLE_OR_COL src) value) 5 1)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input1.q.out ql/src/test/results/compiler/parse/input1.q.out index fa3613e..03ff5f5 100755 --- ql/src/test/results/compiler/parse/input1.q.out +++ ql/src/test/results/compiler/parse/input1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input2.q.out ql/src/test/results/compiler/parse/input2.q.out index 153f517..87d5ae1 100755 --- ql/src/test/results/compiler/parse/input2.q.out +++ ql/src/test/results/compiler/parse/input2.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest2))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 100) (< (. (TOK_TABLE_OR_COL src) key) 200)))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest3) (TOK_PARTSPEC (TOK_PARTVAL ds '2008-04-08') (TOK_PARTVAL hr '12')))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR 2)) (TOK_WHERE (>= (. (TOK_TABLE_OR_COL src) key) 200)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest2))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 100) (< (. (TOK_TABLE_OR_COL src) key) 200))))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest3) (TOK_PARTSPEC (TOK_PARTVAL ds '2008-04-08') (TOK_PARTVAL hr '12')))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR 2)) (TOK_WHERE (>= (. (TOK_TABLE_OR_COL src) key) 200))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input20.q.out ql/src/test/results/compiler/parse/input20.q.out index da4c1af..791199f 100644 --- ql/src/test/results/compiler/parse/input20.q.out +++ ql/src/test/results/compiler/parse/input20.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (% (. (TOK_TABLE_OR_COL src) key) 2) (% (. (TOK_TABLE_OR_COL src) key) 5)) TOK_SERDE TOK_RECORDWRITER 'cat' TOK_SERDE TOK_RECORDREADER))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL key)))) tmap)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL tmap) key) (. (TOK_TABLE_OR_COL tmap) value)) TOK_SERDE TOK_RECORDWRITER 'uniq -c | sed "s@^ *@@" | sed "s@\t@_@" | sed "s@ @\t@"' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST key value)))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (% (. (TOK_TABLE_OR_COL src) key) 2) (% (. (TOK_TABLE_OR_COL src) key) 5)) TOK_SERDE TOK_RECORDWRITER 'cat' TOK_SERDE TOK_RECORDREADER))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL key))))) tmap)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL tmap) key) (. (TOK_TABLE_OR_COL tmap) value)) TOK_SERDE TOK_RECORDWRITER 'uniq -c | sed "s@^ *@@" | sed "s@\t@_@" | sed "s@ @\t@"' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST key value))))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input3.q.out ql/src/test/results/compiler/parse/input3.q.out index b033f3a..9216ff3 100755 --- ql/src/test/results/compiler/parse/input3.q.out +++ ql/src/test/results/compiler/parse/input3.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest2))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 100) (< (. (TOK_TABLE_OR_COL src) key) 200)))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest3) (TOK_PARTSPEC (TOK_PARTVAL ds '2008-04-08') (TOK_PARTVAL hr '12')))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR 2)) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 200) (< (. (TOK_TABLE_OR_COL src) key) 300)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../../../../build/contrib/hive/ql/test/data/warehouse/dest4.out')) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (>= (. (TOK_TABLE_OR_COL src) key) 300)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest2))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 100) (< (. (TOK_TABLE_OR_COL src) key) 200))))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest3) (TOK_PARTSPEC (TOK_PARTVAL ds '2008-04-08') (TOK_PARTVAL hr '12')))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR 2)) (TOK_WHERE (and (>= (. (TOK_TABLE_OR_COL src) key) 200) (< (. (TOK_TABLE_OR_COL src) key) 300))))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../../../../build/contrib/hive/ql/test/data/warehouse/dest4.out')) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (>= (. (TOK_TABLE_OR_COL src) key) 300))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input4.q.out ql/src/test/results/compiler/parse/input4.q.out index c1425e7..2c23884 100755 --- ql/src/test/results/compiler/parse/input4.q.out +++ ql/src/test/results/compiler/parse/input4.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL src) key) (. (TOK_TABLE_OR_COL src) value)) TOK_SERDE TOK_RECORDWRITER '/bin/cat' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST tkey tvalue)))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL tkey)))) tmap)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tkey)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tvalue))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL tmap) tkey) 100)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL src) key) (. (TOK_TABLE_OR_COL src) value)) TOK_SERDE TOK_RECORDWRITER '/bin/cat' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST tkey tvalue)))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL tkey))))) tmap)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tkey)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tvalue))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL tmap) tkey) 100))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input5.q.out ql/src/test/results/compiler/parse/input5.q.out index 854907b..638f3bf 100644 --- ql/src/test/results/compiler/parse/input5.q.out +++ ql/src/test/results/compiler/parse/input5.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL src_thrift) lint) (. (TOK_TABLE_OR_COL src_thrift) lintstring)) TOK_SERDE TOK_RECORDWRITER '/bin/cat' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST tkey tvalue)))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL tkey)))) tmap)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tkey)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tvalue))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TRANSFORM (TOK_EXPLIST (. (TOK_TABLE_OR_COL src_thrift) lint) (. (TOK_TABLE_OR_COL src_thrift) lintstring)) TOK_SERDE TOK_RECORDWRITER '/bin/cat' TOK_SERDE TOK_RECORDREADER (TOK_ALIASLIST tkey tvalue)))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL tkey))))) tmap)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tkey)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL tmap) tvalue)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input6.q.out ql/src/test/results/compiler/parse/input6.q.out index 35f73a6..aab7305 100644 --- ql/src/test/results/compiler/parse/input6.q.out +++ ql/src/test/results/compiler/parse/input6.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src1))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value))) (TOK_WHERE (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL src1) key))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src1))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value))) (TOK_WHERE (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL src1) key)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input7.q.out ql/src/test/results/compiler/parse/input7.q.out index a26964d..e13c818 100644 --- ql/src/test/results/compiler/parse/input7.q.out +++ ql/src/test/results/compiler/parse/input7.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src1))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR TOK_NULL) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src1))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR TOK_NULL) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input8.q.out ql/src/test/results/compiler/parse/input8.q.out index a9a3bd1..c7a6157 100644 --- ql/src/test/results/compiler/parse/input8.q.out +++ ql/src/test/results/compiler/parse/input8.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src1))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (+ 4 TOK_NULL)) (TOK_SELEXPR (- (. (TOK_TABLE_OR_COL src1) key) TOK_NULL)) (TOK_SELEXPR (+ TOK_NULL TOK_NULL))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src1))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (+ 4 TOK_NULL)) (TOK_SELEXPR (- (. (TOK_TABLE_OR_COL src1) key) TOK_NULL)) (TOK_SELEXPR (+ TOK_NULL TOK_NULL)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input9.q.out ql/src/test/results/compiler/parse/input9.q.out index b24ef54..6d1a5ab 100644 --- ql/src/test/results/compiler/parse/input9.q.out +++ ql/src/test/results/compiler/parse/input9.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src1))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR TOK_NULL) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key))) (TOK_WHERE (= TOK_NULL TOK_NULL)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src1))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR TOK_NULL) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key))) (TOK_WHERE (= TOK_NULL TOK_NULL))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input_part1.q.out ql/src/test/results/compiler/parse/input_part1.q.out index 880e0f8..ffbc5d6 100644 --- ql/src/test/results/compiler/parse/input_part1.q.out +++ ql/src/test/results/compiler/parse/input_part1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcpart))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) value)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) hr)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) ds))) (TOK_WHERE (and (and (< (. (TOK_TABLE_OR_COL srcpart) key) 100) (= (. (TOK_TABLE_OR_COL srcpart) ds) '2008-04-08')) (= (. (TOK_TABLE_OR_COL srcpart) hr) '12'))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME srcpart))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) value)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) hr)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL srcpart) ds))) (TOK_WHERE (and (and (< (. (TOK_TABLE_OR_COL srcpart) key) 100) (= (. (TOK_TABLE_OR_COL srcpart) ds) '2008-04-08')) (= (. (TOK_TABLE_OR_COL srcpart) hr) '12')))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input_testsequencefile.q.out ql/src/test/results/compiler/parse/input_testsequencefile.q.out index 0b80da4..c952b33 100644 --- ql/src/test/results/compiler/parse/input_testsequencefile.q.out +++ ql/src/test/results/compiler/parse/input_testsequencefile.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest4_sequencefile))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest4_sequencefile))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input_testxpath.q.out ql/src/test/results/compiler/parse/input_testxpath.q.out index aeb505b..aa416fa 100644 --- ql/src/test/results/compiler/parse/input_testxpath.q.out +++ ql/src/test/results/compiler/parse/input_testxpath.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_thrift) lint) 1)) (TOK_SELEXPR (. ([ (. (TOK_TABLE_OR_COL src_thrift) lintstring) 0) mystring)) (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_thrift) mstringstring) 'key_2'))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_thrift) lint) 1)) (TOK_SELEXPR (. ([ (. (TOK_TABLE_OR_COL src_thrift) lintstring) 0) mystring)) (TOK_SELEXPR ([ (. (TOK_TABLE_OR_COL src_thrift) mstringstring) 'key_2')))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/input_testxpath2.q.out ql/src/test/results/compiler/parse/input_testxpath2.q.out index d4c4610..1515387 100644 --- ql/src/test/results/compiler/parse/input_testxpath2.q.out +++ ql/src/test/results/compiler/parse/input_testxpath2.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) lint))) (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) lintstring))) (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) mstringstring)))) (TOK_WHERE (AND (TOK_FUNCTION TOK_ISNOTNULL (. (TOK_TABLE_OR_COL src_thrift) lint)) (NOT (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL src_thrift) mstringstring))))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src_thrift))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) lint))) (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) lintstring))) (TOK_SELEXPR (TOK_FUNCTION size (. (TOK_TABLE_OR_COL src_thrift) mstringstring)))) (TOK_WHERE (AND (TOK_FUNCTION TOK_ISNOTNULL (. (TOK_TABLE_OR_COL src_thrift) lint)) (NOT (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL src_thrift) mstringstring)))))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join1.q.out ql/src/test/results/compiler/parse/join1.q.out index 1c45f30..58fba7c 100644 --- ql/src/test/results/compiler/parse/join1.q.out +++ ql/src/test/results/compiler/parse/join1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key)))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join2.q.out ql/src/test/results/compiler/parse/join2.q.out index debbac3..7f0691b 100644 --- ql/src/test/results/compiler/parse/join2.q.out +++ ql/src/test/results/compiler/parse/join2.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_JOIN (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key))) (TOK_TABREF (TOK_TABNAME src) src3) (= (+ (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key)) (. (TOK_TABLE_OR_COL src3) key)))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_JOIN (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key))) (TOK_TABREF (TOK_TABNAME src) src3) (= (+ (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key)) (. (TOK_TABLE_OR_COL src3) key)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join3.q.out ql/src/test/results/compiler/parse/join3.q.out index 51baa24..bb4f020 100644 --- ql/src/test/results/compiler/parse/join3.q.out +++ ql/src/test/results/compiler/parse/join3.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_JOIN (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key))) (TOK_TABREF (TOK_TABNAME src) src3) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src3) key)))) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_JOIN (TOK_JOIN (TOK_TABREF (TOK_TABNAME src) src1) (TOK_TABREF (TOK_TABNAME src) src2) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src2) key))) (TOK_TABREF (TOK_TABNAME src) src3) (= (. (TOK_TABLE_OR_COL src1) key) (. (TOK_TABLE_OR_COL src3) key)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join4.q.out ql/src/test/results/compiler/parse/join4.q.out index 77f3486..a403956 100644 --- ql/src/test/results/compiler/parse/join4.q.out +++ ql/src/test/results/compiler/parse/join4.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_LEFTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4)))) c)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_LEFTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20)))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25)))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4))))) c)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join5.q.out ql/src/test/results/compiler/parse/join5.q.out index 4db56a4..d299922 100644 --- ql/src/test/results/compiler/parse/join5.q.out +++ ql/src/test/results/compiler/parse/join5.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_RIGHTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4)))) c)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_RIGHTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20)))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25)))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4))))) c)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join6.q.out ql/src/test/results/compiler/parse/join6.q.out index 3114d62..ef2e5fc 100644 --- ql/src/test/results/compiler/parse/join6.q.out +++ ql/src/test/results/compiler/parse/join6.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_FULLOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4)))) c)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_FULLOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20)))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25)))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4))))) c)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join7.q.out ql/src/test/results/compiler/parse/join7.q.out index 9b12cec..6d226c1 100644 --- ql/src/test/results/compiler/parse/join7.q.out +++ ql/src/test/results/compiler/parse/join7.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_LEFTOUTERJOIN (TOK_FULLOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3))) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src3)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) key) c5) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value) c6)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src3) key) 20) (< (. (TOK_TABLE_OR_COL src3) key) 25))))) c) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL c) c5)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c5) c5) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c6) c6)))) c)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c5)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c6))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_LEFTOUTERJOIN (TOK_FULLOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20)))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25)))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3))) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src3)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) key) c5) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src3) value) c6)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src3) key) 20) (< (. (TOK_TABLE_OR_COL src3) key) 25)))))) c) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL c) c5)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c5) c5) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c6) c6))))) c)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c5)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c6)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/join8.q.out ql/src/test/results/compiler/parse/join8.q.out index aa4e64a..e638650 100644 --- ql/src/test/results/compiler/parse/join8.q.out +++ ql/src/test/results/compiler/parse/join8.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_LEFTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4)))) c)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4))) (TOK_WHERE (AND (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL c) c3)) (TOK_FUNCTION TOK_ISNOTNULL (. (TOK_TABLE_OR_COL c) c1)))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_LEFTOUTERJOIN (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src1)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) key) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src1) value) c2)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src1) key) 10) (< (. (TOK_TABLE_OR_COL src1) key) 20)))))) a) (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src) src2)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) key) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src2) value) c4)) (TOK_WHERE (and (> (. (TOK_TABLE_OR_COL src2) key) 15) (< (. (TOK_TABLE_OR_COL src2) key) 25)))))) b) (= (. (TOK_TABLE_OR_COL a) c1) (. (TOK_TABLE_OR_COL b) c3)))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c1) c1) (TOK_SELEXPR (. (TOK_TABLE_OR_COL a) c2) c2) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c3) c3) (TOK_SELEXPR (. (TOK_TABLE_OR_COL b) c4) c4))))) c)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c1)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c2)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c3)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL c) c4))) (TOK_WHERE (AND (TOK_FUNCTION TOK_ISNULL (. (TOK_TABLE_OR_COL c) c3)) (TOK_FUNCTION TOK_ISNOTNULL (. (TOK_TABLE_OR_COL c) c1))))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample1.q.out ql/src/test/results/compiler/parse/sample1.q.out index 9a493ad..f3fe4b8 100644 --- ql/src/test/results/compiler/parse/sample1.q.out +++ ql/src/test/results/compiler/parse/sample1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcpart) (TOK_TABLEBUCKETSAMPLE 1 1 (TOK_FUNCTION rand)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))) (TOK_WHERE (and (= (. (TOK_TABLE_OR_COL s) ds) '2008-04-08') (= (. (TOK_TABLE_OR_COL s) hr) '11'))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))) (TOK_WHERE (and (= (. (TOK_TABLE_OR_COL s) ds) '2008-04-08') (= (. (TOK_TABLE_OR_COL s) hr) '11')))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcpart) (TOK_TABLEBUCKETSAMPLE 1 1 (TOK_FUNCTION rand)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample2.q.out ql/src/test/results/compiler/parse/sample2.q.out index e67c761..32753b8 100644 --- ql/src/test/results/compiler/parse/sample2.q.out +++ ql/src/test/results/compiler/parse/sample2.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s))))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample3.q.out ql/src/test/results/compiler/parse/sample3.q.out index ad5855b..fe3a3b5 100644 --- ql/src/test/results/compiler/parse/sample3.q.out +++ ql/src/test/results/compiler/parse/sample3.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2 (TOK_TABLE_OR_COL key) (TOK_TABLE_OR_COL value)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s))))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2 (TOK_TABLE_OR_COL key) (TOK_TABLE_OR_COL value)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample4.q.out ql/src/test/results/compiler/parse/sample4.q.out index 790b009..eb88375 100644 --- ql/src/test/results/compiler/parse/sample4.q.out +++ ql/src/test/results/compiler/parse/sample4.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2 (TOK_TABLE_OR_COL key)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s))))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 2 (TOK_TABLE_OR_COL key)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample5.q.out ql/src/test/results/compiler/parse/sample5.q.out index cb55074..b3b6ab7 100644 --- ql/src/test/results/compiler/parse/sample5.q.out +++ ql/src/test/results/compiler/parse/sample5.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 5 (TOK_TABLE_OR_COL key)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s))))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 5 (TOK_TABLE_OR_COL key)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample6.q.out ql/src/test/results/compiler/parse/sample6.q.out index 3562bb8..24e01f4 100644 --- ql/src/test/results/compiler/parse/sample6.q.out +++ ql/src/test/results/compiler/parse/sample6.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 4 (TOK_TABLE_OR_COL key)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s))))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 4 (TOK_TABLE_OR_COL key)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/sample7.q.out ql/src/test/results/compiler/parse/sample7.q.out index 6bcf840..2a896d9 100644 --- ql/src/test/results/compiler/parse/sample7.q.out +++ ql/src/test/results/compiler/parse/sample7.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 4 (TOK_TABLE_OR_COL key)) s)) (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))) (TOK_WHERE (> (. (TOK_TABLE_OR_COL s) key) 100)))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_TAB (TOK_TABNAME dest1))) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME s)))) (TOK_WHERE (> (. (TOK_TABLE_OR_COL s) key) 100))) (TOK_FROM (TOK_TABREF (TOK_TABNAME srcbucket) (TOK_TABLEBUCKETSAMPLE 1 4 (TOK_TABLE_OR_COL key)) s))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/subq.q.out ql/src/test/results/compiler/parse/subq.q.out index afdcb57..ef879de 100644 --- ql/src/test/results/compiler/parse/subq.q.out +++ ql/src/test/results/compiler/parse/subq.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100)))) unioninput)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../build/ql/test/data/warehouse/union.out')) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME unioninput)))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100))))) unioninput)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../build/ql/test/data/warehouse/union.out')) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME unioninput))))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/udf1.q.out ql/src/test/results/compiler/parse/udf1.q.out index a9084e1..fd5e7d5 100644 --- ql/src/test/results/compiler/parse/udf1.q.out +++ ql/src/test/results/compiler/parse/udf1.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (LIKE 'a' '%a%')) (TOK_SELEXPR (LIKE 'b' '%a%')) (TOK_SELEXPR (LIKE 'ab' '%a%')) (TOK_SELEXPR (LIKE 'ab' '%a_')) (TOK_SELEXPR (LIKE '%_' '\%\_')) (TOK_SELEXPR (LIKE 'ab' '\%\_')) (TOK_SELEXPR (LIKE 'ab' '_a%')) (TOK_SELEXPR (LIKE 'ab' 'a')) (TOK_SELEXPR (RLIKE '' '.*')) (TOK_SELEXPR (RLIKE 'a' '[ab]')) (TOK_SELEXPR (RLIKE '' '[ab]')) (TOK_SELEXPR (RLIKE 'hadoop' '[a-z]*')) (TOK_SELEXPR (RLIKE 'hadoop' 'o*')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abc' 'b' 'c')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abc' 'z' 'a')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abbbb' 'bb' 'b')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'hadoop' '(.)[a-z]*' '$1ive'))) (TOK_WHERE (= (. (TOK_TABLE_OR_COL src) key) 86)))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (LIKE 'a' '%a%')) (TOK_SELEXPR (LIKE 'b' '%a%')) (TOK_SELEXPR (LIKE 'ab' '%a%')) (TOK_SELEXPR (LIKE 'ab' '%a_')) (TOK_SELEXPR (LIKE '%_' '\%\_')) (TOK_SELEXPR (LIKE 'ab' '\%\_')) (TOK_SELEXPR (LIKE 'ab' '_a%')) (TOK_SELEXPR (LIKE 'ab' 'a')) (TOK_SELEXPR (RLIKE '' '.*')) (TOK_SELEXPR (RLIKE 'a' '[ab]')) (TOK_SELEXPR (RLIKE '' '[ab]')) (TOK_SELEXPR (RLIKE 'hadoop' '[a-z]*')) (TOK_SELEXPR (RLIKE 'hadoop' 'o*')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abc' 'b' 'c')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abc' 'z' 'a')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'abbbb' 'bb' 'b')) (TOK_SELEXPR (TOK_FUNCTION REGEXP_REPLACE 'hadoop' '(.)[a-z]*' '$1ive'))) (TOK_WHERE (= (. (TOK_TABLE_OR_COL src) key) 86))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/udf4.q.out ql/src/test/results/compiler/parse/udf4.q.out index 6065692..d0b318a 100644 --- ql/src/test/results/compiler/parse/udf4.q.out +++ ql/src/test/results/compiler/parse/udf4.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME dest1))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION round 1.0)) (TOK_SELEXPR (TOK_FUNCTION round 1.5)) (TOK_SELEXPR (TOK_FUNCTION round (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION floor 1.0)) (TOK_SELEXPR (TOK_FUNCTION floor 1.5)) (TOK_SELEXPR (TOK_FUNCTION floor (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION sqrt 1.0)) (TOK_SELEXPR (TOK_FUNCTION sqrt (- 1.0))) (TOK_SELEXPR (TOK_FUNCTION sqrt 0.0)) (TOK_SELEXPR (TOK_FUNCTION ceil 1.0)) (TOK_SELEXPR (TOK_FUNCTION ceil 1.5)) (TOK_SELEXPR (TOK_FUNCTION ceil (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION ceiling 1.0)) (TOK_SELEXPR (TOK_FUNCTION rand 3)) (TOK_SELEXPR (+ 3)) (TOK_SELEXPR (- 3)) (TOK_SELEXPR (+ 1 (+ 2))) (TOK_SELEXPR (+ 1 (- 2))) (TOK_SELEXPR (~ 1))))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION round 1.0)) (TOK_SELEXPR (TOK_FUNCTION round 1.5)) (TOK_SELEXPR (TOK_FUNCTION round (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION floor 1.0)) (TOK_SELEXPR (TOK_FUNCTION floor 1.5)) (TOK_SELEXPR (TOK_FUNCTION floor (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION sqrt 1.0)) (TOK_SELEXPR (TOK_FUNCTION sqrt (- 1.0))) (TOK_SELEXPR (TOK_FUNCTION sqrt 0.0)) (TOK_SELEXPR (TOK_FUNCTION ceil 1.0)) (TOK_SELEXPR (TOK_FUNCTION ceil 1.5)) (TOK_SELEXPR (TOK_FUNCTION ceil (- 1.5))) (TOK_SELEXPR (TOK_FUNCTION ceiling 1.0)) (TOK_SELEXPR (TOK_FUNCTION rand 3)) (TOK_SELEXPR (+ 3)) (TOK_SELEXPR (- 3)) (TOK_SELEXPR (+ 1 (+ 2))) (TOK_SELEXPR (+ 1 (- 2))) (TOK_SELEXPR (~ 1)))) (TOK_FROM (TOK_TABREF (TOK_TABNAME dest1)))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/udf6.q.out ql/src/test/results/compiler/parse/udf6.q.out index 795216a..b50bd5d 100644 --- ql/src/test/results/compiler/parse/udf6.q.out +++ ql/src/test/results/compiler/parse/udf6.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION CONCAT 'a' 'b')) (TOK_SELEXPR (TOK_FUNCTION IF TRUE 1 2))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION CONCAT 'a' 'b')) (TOK_SELEXPR (TOK_FUNCTION IF TRUE 1 2)))))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/udf_case.q.out ql/src/test/results/compiler/parse/udf_case.q.out index f8de5fc..59e7b13 100644 --- ql/src/test/results/compiler/parse/udf_case.q.out +++ ql/src/test/results/compiler/parse/udf_case.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION CASE 1 1 2 3 4 5)) (TOK_SELEXPR (TOK_FUNCTION CASE 11 12 13 14 15))) (TOK_LIMIT 1))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION CASE 1 1 2 3 4 5)) (TOK_SELEXPR (TOK_FUNCTION CASE 11 12 13 14 15))) (TOK_LIMIT 1)) (TOK_FROM (TOK_TABREF (TOK_TABNAME src)))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/udf_when.q.out ql/src/test/results/compiler/parse/udf_when.q.out index a527fa4..32c9030 100644 --- ql/src/test/results/compiler/parse/udf_when.q.out +++ ql/src/test/results/compiler/parse/udf_when.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION WHEN (= 1 1) 2 (= 3 5) 4 5)) (TOK_SELEXPR (TOK_FUNCTION WHEN (= 12 11) 13 (= 14 10) 15))) (TOK_LIMIT 1))) \ No newline at end of file +(TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION WHEN (= 1 1) 2 (= 3 5) 4 5)) (TOK_SELEXPR (TOK_FUNCTION WHEN (= 12 11) 13 (= 14 10) 15))) (TOK_LIMIT 1)) (TOK_FROM (TOK_TABREF (TOK_TABNAME src)))) \ No newline at end of file diff --git ql/src/test/results/compiler/parse/union.q.out ql/src/test/results/compiler/parse/union.q.out index d9be739..7872895 100644 --- ql/src/test/results/compiler/parse/union.q.out +++ ql/src/test/results/compiler/parse/union.q.out @@ -1 +1 @@ -(TOK_QUERY (TOK_FROM (TOK_SUBQUERY (TOK_UNION (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100)))) (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (> (. (TOK_TABLE_OR_COL src) key) 100))))) unioninput)) (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../build/ql/test/data/warehouse/union.out')) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME unioninput)))))) \ No newline at end of file +(TOK_QUERY (TOK_FROM_BASE (TOK_SUBQUERY (TOK_UNION (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) key)) (TOK_SELEXPR (. (TOK_TABLE_OR_COL src) value))) (TOK_WHERE (< (. (TOK_TABLE_OR_COL src) key) 100))))) (TOK_QUERY (TOK_FROM_BASE (TOK_TABREF (TOK_TABNAME src))) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME src)))) (TOK_WHERE (> (. (TOK_TABLE_OR_COL src) key) 100)))))) unioninput)) (TOK_QUERY (TOK_INSERT (TOK_DESTINATION (TOK_DIR '../build/ql/test/data/warehouse/union.out')) (TOK_SELECT (TOK_SELEXPR (TOK_ALLCOLREF (TOK_TABNAME unioninput))))))) \ No newline at end of file