From 958f7cb271bdecbc2869d3d57999446ba63c90c0 Mon Sep 17 00:00:00 2001 From: Syed Albiz Date: Tue, 10 May 2011 20:14:54 -0700 Subject: [PATCH 1/1] Add line/column info to semantic errors and expand context strings diff --git common/src/java/org/apache/hadoop/hive/conf/HiveConf.java common/src/java/org/apache/hadoop/hive/conf/HiveConf.java index dc96a1f..2f0ca27 100644 --- common/src/java/org/apache/hadoop/hive/conf/HiveConf.java +++ common/src/java/org/apache/hadoop/hive/conf/HiveConf.java @@ -751,4 +751,13 @@ public class HiveConf extends Configuration { return "_col" + pos; } + public static int getPositionFromInternalName(String internalName) { + char pos = internalName.charAt(internalName.length()-1); + if (Character.isDigit(pos)) { + return Character.digit(pos, 10); + } else{ + return -1; + } + } + } diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java index 2fe37b6..3af6aed 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java @@ -137,7 +137,7 @@ public abstract class BaseSemanticAnalyzer { if (!lineDelim.equals("\n") && !lineDelim.equals("10")) { throw new SemanticException( - ErrorMsg.LINES_TERMINATED_BY_NON_NEWLINE.getMsg()); + ErrorMsg.LINES_TERMINATED_BY_NON_NEWLINE.getMsg(rowChild)); } break; default: diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/ErrorMsg.java ql/src/java/org/apache/hadoop/hive/ql/parse/ErrorMsg.java index 4ddf5b9..eb33709 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/ErrorMsg.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/ErrorMsg.java @@ -105,19 +105,19 @@ public enum ErrorMsg { BUCKETED_NUMBERATOR_BIGGER_DENOMINATOR("Numberator should not be bigger than " + "denaminator in sample clause for table"), NEED_PARTITION_ERROR("Need to specify partition columns because the destination " - + "table is partitioned."), + + "table is partitioned"), CTAS_CTLT_COEXISTENCE("Create table command does not allow LIKE and AS-SELECT in " + "the same command"), LINES_TERMINATED_BY_NON_NEWLINE("LINES TERMINATED BY only supports newline '\\n' right now"), CTAS_COLLST_COEXISTENCE("CREATE TABLE AS SELECT command cannot specify the list of columns " - + "for the target table."), + + "for the target table"), CTLT_COLLST_COEXISTENCE("CREATE TABLE LIKE command cannot specify the list of columns for " - + "the target table."), - INVALID_SELECT_SCHEMA("Cannot derive schema from the select-clause."), + + "the target table"), + INVALID_SELECT_SCHEMA("Cannot derive schema from the select-clause"), CTAS_PARCOL_COEXISTENCE("CREATE-TABLE-AS-SELECT does not support partitioning in the target " - + "table."), - CTAS_MULTI_LOADFILE("CREATE-TABLE-AS-SELECT results in multiple file load."), - CTAS_EXTTBL_COEXISTENCE("CREATE-TABLE-AS-SELECT cannot create external table."), + + "table"), + CTAS_MULTI_LOADFILE("CREATE-TABLE-AS-SELECT results in multiple file load"), + CTAS_EXTTBL_COEXISTENCE("CREATE-TABLE-AS-SELECT cannot create external table"), TABLE_ALREADY_EXISTS("Table already exists:", "42S02"), COLUMN_ALIAS_ALREADY_EXISTS("Column alias already exists:", "42S02"), UDTF_MULTIPLE_EXPR("Only a single expression in the SELECT clause is supported with UDTF's"), @@ -147,12 +147,12 @@ public enum ErrorMsg { + "hive.exec.dynamic.partition=true or specify partition column values"), DYNAMIC_PARTITION_STRICT_MODE("Dynamic partition strict mode requires at least one " + "static partition column. To turn this off set hive.exec.dynamic.partition.mode=nonstrict"), - DYNAMIC_PARTITION_MERGE("Dynamic partition does not support merging using non-CombineHiveInputFormat." + DYNAMIC_PARTITION_MERGE("Dynamic partition does not support merging using non-CombineHiveInputFormat" + "Please check your hive.input.format setting and make sure your Hadoop version support " - + "CombineFileInputFormat."), + + "CombineFileInputFormat"), NONEXISTPARTCOL("Non-Partition column appears in the partition specification: "), UNSUPPORTED_TYPE("DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use " - + "STRING instead."), + + "STRING instead"), CREATE_NON_NATIVE_AS("CREATE TABLE AS SELECT cannot be used for a non-native table"), LOAD_INTO_NON_NATIVE("A non-native table cannot be used as target for LOAD"), LOCKMGR_NOT_SPECIFIED("Lock manager not specified correctly, set hive.lock.manager"), @@ -160,9 +160,9 @@ public enum ErrorMsg { LOCK_CANNOT_BE_ACQUIRED("Locks on the underlying objects cannot be acquired. retry after some time"), ZOOKEEPER_CLIENT_COULD_NOT_BE_INITIALIZED("Check hive.zookeeper.quorum and hive.zookeeper.client.port"), OVERWRITE_ARCHIVED_PART("Cannot overwrite an archived partition. " + - "Unarchive before running this command."), + "Unarchive before running this command"), ARCHIVE_METHODS_DISABLED("Archiving methods are currently disabled. " + - "Please see the Hive wiki for more information about enabling archiving."), + "Please see the Hive wiki for more information about enabling archiving"), ARCHIVE_ON_MULI_PARTS("ARCHIVE can only be run on a single partition"), UNARCHIVE_ON_MULI_PARTS("ARCHIVE can only be run on a single partition"), ARCHIVE_ON_TABLE("ARCHIVE can only be run on partitions"), @@ -289,11 +289,10 @@ public enum ErrorMsg { // Dirty hack as this will throw away spaces and other things - find a better // way! - private String getText(ASTNode tree) { + public static String getText(ASTNode tree) { if (tree.getChildCount() == 0) { return tree.getText(); } - return getText((ASTNode) tree.getChild(tree.getChildCount() - 1)); } @@ -302,8 +301,9 @@ public enum ErrorMsg { renderPosition(sb, tree); sb.append(" "); sb.append(mesg); - sb.append(" "); + sb.append(" '"); sb.append(getText(tree)); + sb.append("'"); renderOrigin(sb, tree.getOrigin()); return sb.toString(); } 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 9cb407c..91d8bc7 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -423,6 +423,19 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { return exprs; } + private String generateErrorMessage(ASTNode ast, String message) { + StringBuilder sb = new StringBuilder(); + sb.append(ast.getLine()); + sb.append(":"); + sb.append(ast.getCharPositionInLine()); + sb.append(" "); + sb.append(message); + sb.append(". Error encountered near token '"); + sb.append(ErrorMsg.getText(ast)); + sb.append("'"); + return sb.toString(); + } + /** * Goes though the tabref tree and finds the alias for the table. Once found, * it records the table name-> alias association in aliasToTabs. It also makes @@ -483,8 +496,9 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { // TODO: For now only support sampling on up to two columns // Need to change it to list of columns if (sampleCols.size() > 2) { - throw new SemanticException(ErrorMsg.SAMPLE_RESTRICTION.getMsg(tabref - .getChild(0))); + throw new SemanticException(generateErrorMessage( + (ASTNode) tabref.getChild(0), + ErrorMsg.SAMPLE_RESTRICTION.getMsg())); } qb.getParseInfo().setTabSample( alias, @@ -503,15 +517,16 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { String inputFormat = HiveConf.getVar(conf, HiveConf.ConfVars.HIVEINPUTFORMAT); if (!inputFormat.equals( CombineHiveInputFormat.class.getName())) { - throw new SemanticException( - "Percentage sampling is not supported in " + inputFormat); + throw new SemanticException(generateErrorMessage((ASTNode) tabref.getChild(1), + "Percentage sampling is not supported in " + inputFormat)); } ASTNode sampleClause = (ASTNode) tabref.getChild(1); String alias_id = getAliasId(alias, qb); String strPercentage = unescapeIdentifier(sampleClause.getChild(0).getText()); Double percent = Double.valueOf(strPercentage).doubleValue(); if (percent < 0 || percent > 100) { - throw new SemanticException("Sampling percentage should be between 0 and 100."); + throw new SemanticException(generateErrorMessage(sampleClause, + "Sampling percentage should be between 0 and 100")); } nameToSplitSample.put(alias_id, new SplitSample( percent, conf.getIntVar(ConfVars.HIVESAMPLERANDOMNUM))); @@ -585,7 +600,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { int numChildren = join.getChildCount(); if ((numChildren != 2) && (numChildren != 3) && join.getToken().getType() != HiveParser.TOK_UNIQUEJOIN) { - throw new SemanticException("Join with multiple children"); + throw new SemanticException(generateErrorMessage(join, + "Join with multiple children")); } for (int num = 0; num < numChildren; num++) { @@ -715,7 +731,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { case HiveParser.TOK_FROM: int child_count = ast.getChildCount(); if (child_count != 1) { - throw new SemanticException("Multiple Children " + child_count); + throw new SemanticException(generateErrorMessage(ast, + "Multiple Children " + child_count)); } // Check if this is a subquery / lateral view @@ -813,7 +830,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { // explicitly say: // select * from (subq1 union subq2) subqalias if (!qbp.getIsSubQ()) { - throw new SemanticException(ErrorMsg.UNION_NOTIN_SUBQ.getMsg()); + throw new SemanticException(generateErrorMessage(ast, + ErrorMsg.UNION_NOTIN_SUBQ.getMsg())); } default: @@ -900,7 +918,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { try { ts.partitions = db.getPartitionsByNames(ts.tableHandle, ts.partSpec); } catch (HiveException e) { - throw new SemanticException("Cannot get partitions for " + ts.partSpec, e); + throw new SemanticException(generateErrorMessage(qb.getParseInfo().getSrcForAlias(alias), + "Cannot get partitions for " + ts.partSpec), e); } } qb.getParseInfo().addTableSpec(alias, ts); @@ -975,7 +994,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { fname = ctx.getExternalTmpFileURI( FileUtils.makeQualified(new Path(location), conf).toUri()); } catch (Exception e) { - throw new SemanticException("Error creating temporary folder on: " + location, e); + throw new SemanticException(generateErrorMessage(ast, + "Error creating temporary folder on: " + location), e); } } else { qb.setIsQuery(true); @@ -988,8 +1008,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { break; } default: - throw new SemanticException("Unknown Token Type " - + ast.getToken().getType()); + throw new SemanticException(generateErrorMessage(ast, + "Unknown Token Type " + ast.getToken().getType())); } } } catch (HiveException e) { @@ -1538,6 +1558,10 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { return (end == -1) ? "" : cmd.substring(end, cmd.length()); } + private static int getPositionFromInternalName(String internalName) { + return HiveConf.getPositionFromInternalName(internalName); + } + private String fetchFilesNotInLocalFilesystem(String cmd) { SessionState ss = SessionState.get(); String progName = getScriptProgName(cmd); @@ -1617,8 +1641,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { String lineDelim = unescapeSQLString(rowChild.getChild(0).getText()); tblDesc.getProperties().setProperty(Constants.LINE_DELIM, lineDelim); if (!lineDelim.equals("\n") && !lineDelim.equals("10")) { - throw new SemanticException( - ErrorMsg.LINES_TERMINATED_BY_NON_NEWLINE.getMsg()); + throw new SemanticException(generateErrorMessage(rowChild, + ErrorMsg.LINES_TERMINATED_BY_NON_NEWLINE.getMsg())); } break; default: @@ -2019,12 +2043,15 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { if (isUDTF) { // Only support a single expression when it's a UDTF if (selExprList.getChildCount() > 1) { - throw new SemanticException(ErrorMsg.UDTF_MULTIPLE_EXPR.getMsg()); + throw new SemanticException(generateErrorMessage( + (ASTNode) selExprList.getChild(1), + ErrorMsg.UDTF_MULTIPLE_EXPR.getMsg())); } // Require an AS for UDTFs for column aliases ASTNode selExpr = (ASTNode) selExprList.getChild(posn); if (selExpr.getChildCount() < 2) { - throw new SemanticException(ErrorMsg.UDTF_REQUIRE_AS.getMsg()); + throw new SemanticException(generateErrorMessage(udtfExpr, + ErrorMsg.UDTF_REQUIRE_AS.getMsg())); } // Get the column / table aliases from the expression. Start from 1 as // 0 is the TOK_FUNCTION @@ -2084,7 +2111,9 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { // This check is not needed and invalid when there is a transform b/c the // AST's are slightly different. if (!isInTransform && !isUDTF && child.getChildCount() > 2) { - throw new SemanticException(ErrorMsg.INVALID_AS.getMsg()); + throw new SemanticException(generateErrorMessage( + (ASTNode) child.getChild(2), + ErrorMsg.INVALID_AS.getMsg())); } // The real expression @@ -3578,12 +3607,16 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { List parts = dest_tab.getPartitionKeys(); if (parts != null && parts.size() > 0) { // table is partitioned if (partSpec== null || partSpec.size() == 0) { // user did NOT specify partition - throw new SemanticException(ErrorMsg.NEED_PARTITION_ERROR.getMsg()); + throw new SemanticException(generateErrorMessage( + qb.getParseInfo().getDestForClause(dest), + ErrorMsg.NEED_PARTITION_ERROR.getMsg())); } // the HOLD_DDLTIIME hint should not be used with dynamic partition since the // newly generated partitions should always update their DDLTIME if (holdDDLTime) { - throw new SemanticException(ErrorMsg.HOLD_DDLTIME_ON_NONEXIST_PARTITIONS.getMsg()); + throw new SemanticException(generateErrorMessage( + qb.getParseInfo().getDestForClause(dest), + ErrorMsg.HOLD_DDLTIME_ON_NONEXIST_PARTITIONS.getMsg())); } dpCtx = qbm.getDPCtx(dest); if (dpCtx == null) { @@ -3608,7 +3641,9 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { HiveConf.setBoolVar(conf, HiveConf.ConfVars.HIVEJOBPROGRESS, true); } else { // QBMetaData.DEST_PARTITION capture the all-SP case - throw new SemanticException(ErrorMsg.DYNAMIC_PARTITION_DISABLED.getMsg()); + throw new SemanticException(generateErrorMessage( + qb.getParseInfo().getDestForClause(dest), + ErrorMsg.DYNAMIC_PARTITION_DISABLED.getMsg())); } if (dpCtx.getSPPath() != null) { dest_path = new Path(dest_tab.getPath(), dpCtx.getSPPath()); @@ -3697,7 +3732,7 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { if ("har".equalsIgnoreCase(dest_path.toUri().getScheme())) { throw new SemanticException(ErrorMsg.OVERWRITE_ARCHIVED_PART - .getMsg()); + .getMsg(qb.getParseInfo().getDestForClause(dest))); } queryTmpdir = ctx.getExternalTmpFileURI(dest_path.toUri()); table_desc = Utilities.getTableDesc(dest_tab); @@ -3715,7 +3750,9 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { try { Partition part = db.getPartition(dest_tab, dest_part.getSpec(), false); if (part == null) { - throw new SemanticException(ErrorMsg.HOLD_DDLTIME_ON_NONEXIST_PARTITIONS.getMsg()); + throw new SemanticException(generateErrorMessage( + qb.getParseInfo().getDestForClause(dest), + ErrorMsg.HOLD_DDLTIME_ON_NONEXIST_PARTITIONS.getMsg())); } } catch (HiveException e) { throw new SemanticException(e); @@ -5609,6 +5646,8 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { HashMap leftmap = leftRR.getFieldMap(leftalias); HashMap rightmap = rightRR.getFieldMap(rightalias); // make sure the schemas of both sides are the same + ASTNode tabref = qb.getAliases().isEmpty() ? null : + qb.getParseInfo().getSrcForAlias(qb.getAliases().get(0)); if (leftmap.size() != rightmap.size()) { throw new SemanticException("Schema of both sides of union should match."); } @@ -5617,26 +5656,30 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { ColumnInfo lInfo = lEntry.getValue(); ColumnInfo rInfo = rightmap.get(field); if (rInfo == null) { - throw new SemanticException( + throw new SemanticException(generateErrorMessage(tabref, "Schema of both sides of union should match. " + rightalias - + " does not have the field " + field); + + " does not have the field " + field)); } if (lInfo == null) { - throw new SemanticException( + throw new SemanticException(generateErrorMessage(tabref, "Schema of both sides of union should match. " + leftalias - + " does not have the field " + field); + + " does not have the field " + field)); } if (!lInfo.getInternalName().equals(rInfo.getInternalName())) { - throw new SemanticException( - "Schema of both sides of union should match: " + field + ":" - + lInfo.getInternalName() + " " + rInfo.getInternalName()); + throw new SemanticException(generateErrorMessage(tabref, + "Schema of both sides of union should match: field " + field + ":" + + " appears on the left side of the UNION at column position: " + + getPositionFromInternalName(lInfo.getInternalName()) + + ", and on the right side of the UNION at column position: " + + getPositionFromInternalName(rInfo.getInternalName()) + + ". Column positions should match for a UNION")); } if (!lInfo.getType().getTypeName().equals(rInfo.getType().getTypeName())) { - throw new SemanticException( + throw new SemanticException(generateErrorMessage(tabref, "Schema of both sides of union should match: Column " + field + " is of type " + lInfo.getType().getTypeName() + " on first table and type " + rInfo.getType().getTypeName() - + " on second table"); + + " on second table")); } } @@ -6892,8 +6935,9 @@ public class SemanticAnalyzer extends BaseSemanticAnalyzer { int explicitColCount = imposedSchema.size(); int derivedColCount = derivedSchema.size(); if (explicitColCount != derivedColCount) { - throw new SemanticException(ErrorMsg.VIEW_COL_MISMATCH - .getMsg(viewSelect)); + throw new SemanticException(generateErrorMessage( + viewSelect, + ErrorMsg.VIEW_COL_MISMATCH.getMsg())); } } 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 bca37fd..6ff71a5 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java @@ -384,7 +384,8 @@ public final class TypeCheckProcFactory { if (colInfo == null) { // It's not a column or a table alias. if (input.getIsExprResolver()) { - ctx.setError(ErrorMsg.NON_KEY_EXPR_IN_GROUPBY.getMsg(expr), expr); + stack.pop(); + ctx.setError(ErrorMsg.NON_KEY_EXPR_IN_GROUPBY.getMsg((ASTNode) stack.peek()), expr); return null; } else { ctx.setError(ErrorMsg.INVALID_TABLE_OR_COLUMN.getMsg(expr diff --git ql/src/test/queries/clientnegative/union3.q ql/src/test/queries/clientnegative/union3.q new file mode 100644 index 0000000..ce65747 --- /dev/null +++ ql/src/test/queries/clientnegative/union3.q @@ -0,0 +1,5 @@ +-- Ensure that UNION ALL columns are in the correct order on both sides +-- Ensure that the appropriate error message is propagated +CREATE TABLE IF NOT EXISTS union3 (bar int, baz int); +SELECT * FROM ( SELECT f.bar, f.baz FROM union3 f UNION ALL SELECT b.baz, b.bar FROM union3 b ) c; +DROP TABLE union3; diff --git ql/src/test/results/clientnegative/analyze_view.q.out ql/src/test/results/clientnegative/analyze_view.q.out index ef76106..99def40 100644 --- ql/src/test/results/clientnegative/analyze_view.q.out +++ ql/src/test/results/clientnegative/analyze_view.q.out @@ -4,9 +4,9 @@ POSTHOOK: query: DROP VIEW av POSTHOOK: type: DROPVIEW PREHOOK: query: CREATE VIEW av AS SELECT * FROM src PREHOOK: type: CREATEVIEW -PREHOOK: Output: file:/var/folders/7P/7PeC14kXFIWq0PIYyexGbmKuXUk/-Tmp-/jsichi/hive_2011-02-01_17-50-22_779_44083551773069928/-mr-10000 +PREHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-10_11-05-15_170_7006434946918241536/-mr-10000 POSTHOOK: query: CREATE VIEW av AS SELECT * FROM src POSTHOOK: type: CREATEVIEW POSTHOOK: Output: default@av -POSTHOOK: Output: file:/var/folders/7P/7PeC14kXFIWq0PIYyexGbmKuXUk/-Tmp-/jsichi/hive_2011-02-01_17-50-22_779_44083551773069928/-mr-10000 +POSTHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-10_11-05-15_170_7006434946918241536/-mr-10000 FAILED: Error in semantic analysis: ANALYZE is not supported for views diff --git ql/src/test/results/clientnegative/clusterbydistributeby.q.out ql/src/test/results/clientnegative/clusterbydistributeby.q.out index 4c1ebfb..ad6db4a 100644 --- ql/src/test/results/clientnegative/clusterbydistributeby.q.out +++ ql/src/test/results/clientnegative/clusterbydistributeby.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE dest1(key INT, ten INT, one INT, value STRING) STORED AS TEXTFILE POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@dest1 -FAILED: Error in semantic analysis: Line 8:14 Cannot have both CLUSTER BY and DISTRIBUTE BY clauses tkey +FAILED: Error in semantic analysis: Line 8:14 Cannot have both CLUSTER BY and DISTRIBUTE BY clauses 'tkey' diff --git ql/src/test/results/clientnegative/clusterbysortby.q.out ql/src/test/results/clientnegative/clusterbysortby.q.out index f76d4a7..0eb0654 100644 --- ql/src/test/results/clientnegative/clusterbysortby.q.out +++ ql/src/test/results/clientnegative/clusterbysortby.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE dest1(key INT, ten INT, one INT, value STRING) STORED AS TEXTFILE POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@dest1 -FAILED: Error in semantic analysis: Line 8:8 Cannot have both CLUSTER BY and SORT BY clauses one +FAILED: Error in semantic analysis: Line 8:8 Cannot have both CLUSTER BY and SORT BY clauses 'one' diff --git ql/src/test/results/clientnegative/clustern3.q.out ql/src/test/results/clientnegative/clustern3.q.out index da71016..63adb30 100644 --- ql/src/test/results/clientnegative/clustern3.q.out +++ ql/src/test/results/clientnegative/clustern3.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:52 Invalid column reference key +FAILED: Error in semantic analysis: Line 2:52 Invalid column reference 'key' diff --git ql/src/test/results/clientnegative/clustern4.q.out ql/src/test/results/clientnegative/clustern4.q.out index 1519e48..3d1ce30 100644 --- ql/src/test/results/clientnegative/clustern4.q.out +++ ql/src/test/results/clientnegative/clustern4.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:50 Invalid table alias or column reference key +FAILED: Error in semantic analysis: Line 2:50 Invalid table alias or column reference 'key' diff --git ql/src/test/results/clientnegative/create_view_failure3.q.out ql/src/test/results/clientnegative/create_view_failure3.q.out index 70e365a..8b40a8f 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: Error in semantic analysis: Line 5:16 The number of columns produced by the SELECT clause does not match the number of column names specified by CREATE VIEW key +FAILED: Error in semantic analysis: 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' diff --git ql/src/test/results/clientnegative/ctas.q.out ql/src/test/results/clientnegative/ctas.q.out index a39fb7c..64612df 100644 --- ql/src/test/results/clientnegative/ctas.q.out +++ ql/src/test/results/clientnegative/ctas.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: CREATE-TABLE-AS-SELECT cannot create external table. +FAILED: Error in semantic analysis: CREATE-TABLE-AS-SELECT cannot create external table diff --git ql/src/test/results/clientnegative/ddltime.q.out ql/src/test/results/clientnegative/ddltime.q.out index 11d00c3..ed747e3 100644 --- ql/src/test/results/clientnegative/ddltime.q.out +++ ql/src/test/results/clientnegative/ddltime.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: create table T2 like srcpart POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@T2 -FAILED: Error in semantic analysis: org.apache.hadoop.hive.ql.parse.SemanticException: HOLD_DDLTIME hint cannot be applied to dynamic partitions or non-existent partitions +FAILED: Error in semantic analysis: org.apache.hadoop.hive.ql.parse.SemanticException: 3:23 HOLD_DDLTIME hint cannot be applied to dynamic partitions or non-existent partitions. Error encountered near token ''1'' diff --git ql/src/test/results/clientnegative/drop_partition_failure.q.out ql/src/test/results/clientnegative/drop_partition_failure.q.out index 1a0ac10..8a7c63d 100644 --- ql/src/test/results/clientnegative/drop_partition_failure.q.out +++ ql/src/test/results/clientnegative/drop_partition_failure.q.out @@ -31,4 +31,4 @@ POSTHOOK: type: SHOWPARTITIONS b=1/c=1 b=1/c=2 b=2/c=2 -FAILED: Error in semantic analysis: Line 3:31 Partition not found '3' +FAILED: Error in semantic analysis: Line 3:31 Partition not found ''3'' diff --git ql/src/test/results/clientnegative/dyn_part2.q.out ql/src/test/results/clientnegative/dyn_part2.q.out index cc0cd3c..455adba 100644 --- ql/src/test/results/clientnegative/dyn_part2.q.out +++ ql/src/test/results/clientnegative/dyn_part2.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: create table nzhang_part1 (key string, value string) partitioned by (ds string, hr string) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@nzhang_part1 -FAILED: Error in semantic analysis: Line 3:23 Cannot insert into target table because column number/types are different hr: Table insclause-0 has 3 columns, but query has 2 columns. +FAILED: Error in semantic analysis: Line 3:23 Cannot insert into target table because column number/types are different 'hr': Table insclause-0 has 3 columns, but query has 2 columns. diff --git ql/src/test/results/clientnegative/dyn_part_merge.q.out ql/src/test/results/clientnegative/dyn_part_merge.q.out index cab97f7..de01fd7 100644 --- ql/src/test/results/clientnegative/dyn_part_merge.q.out +++ ql/src/test/results/clientnegative/dyn_part_merge.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: create table dyn_merge(key string, value string) partitioned by (ds string) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@dyn_merge -FAILED: Error in semantic analysis: Dynamic partition does not support merging using non-CombineHiveInputFormat.Please check your hive.input.format setting and make sure your Hadoop version support CombineFileInputFormat. +FAILED: Error in semantic analysis: Dynamic partition does not support merging using non-CombineHiveInputFormatPlease check your hive.input.format setting and make sure your Hadoop version support CombineFileInputFormat diff --git ql/src/test/results/clientnegative/fileformat_void_input.q.out ql/src/test/results/clientnegative/fileformat_void_input.q.out index 5a7a05a..96bd7cd 100644 --- ql/src/test/results/clientnegative/fileformat_void_input.q.out +++ ql/src/test/results/clientnegative/fileformat_void_input.q.out @@ -19,4 +19,4 @@ POSTHOOK: Input: default@src POSTHOOK: Output: default@dest1 POSTHOOK: Lineage: dest1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] POSTHOOK: Lineage: dest1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] -FAILED: Error in semantic analysis: Line 3:20 Input format must implement InputFormat dest1 +FAILED: Error in semantic analysis: Line 3:20 Input format must implement InputFormat 'dest1' diff --git ql/src/test/results/clientnegative/groupby_key.q.out ql/src/test/results/clientnegative/groupby_key.q.out index c6218a4..906197c 100644 --- ql/src/test/results/clientnegative/groupby_key.q.out +++ ql/src/test/results/clientnegative/groupby_key.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:14 Expression not in GROUP BY key value +FAILED: Error in semantic analysis: Line 1:7 Expression not in GROUP BY key 'value' diff --git ql/src/test/results/clientnegative/input1.q.out ql/src/test/results/clientnegative/input1.q.out index 73f1657..7ce4204 100644 --- ql/src/test/results/clientnegative/input1.q.out +++ ql/src/test/results/clientnegative/input1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Invalid table alias a +FAILED: Error in semantic analysis: Line 1:7 Invalid table alias 'a' diff --git ql/src/test/results/clientnegative/input2.q.out ql/src/test/results/clientnegative/input2.q.out index 0c460a6..edc54bc 100644 --- ql/src/test/results/clientnegative/input2.q.out +++ ql/src/test/results/clientnegative/input2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Invalid table alias or column reference a +FAILED: Error in semantic analysis: Line 1:7 Invalid table alias or column reference 'a' diff --git ql/src/test/results/clientnegative/invalid_create_tbl1.q.out ql/src/test/results/clientnegative/invalid_create_tbl1.q.out index d091d8c..c882c25 100644 --- ql/src/test/results/clientnegative/invalid_create_tbl1.q.out +++ ql/src/test/results/clientnegative/invalid_create_tbl1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_alter1.q.out ql/src/test/results/clientnegative/invalid_t_alter1.q.out index f7ae626..69e7173 100644 --- ql/src/test/results/clientnegative/invalid_t_alter1.q.out +++ ql/src/test/results/clientnegative/invalid_t_alter1.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE alter_test (d STRING) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@alter_test -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_alter2.q.out ql/src/test/results/clientnegative/invalid_t_alter2.q.out index f7ae626..69e7173 100644 --- ql/src/test/results/clientnegative/invalid_t_alter2.q.out +++ ql/src/test/results/clientnegative/invalid_t_alter2.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE alter_test (d STRING) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@alter_test -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_create1.q.out ql/src/test/results/clientnegative/invalid_t_create1.q.out index d091d8c..c882c25 100644 --- ql/src/test/results/clientnegative/invalid_t_create1.q.out +++ ql/src/test/results/clientnegative/invalid_t_create1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_create2.q.out ql/src/test/results/clientnegative/invalid_t_create2.q.out index d091d8c..c882c25 100644 --- ql/src/test/results/clientnegative/invalid_t_create2.q.out +++ ql/src/test/results/clientnegative/invalid_t_create2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_create3.q.out ql/src/test/results/clientnegative/invalid_t_create3.q.out index d091d8c..c882c25 100644 --- ql/src/test/results/clientnegative/invalid_t_create3.q.out +++ ql/src/test/results/clientnegative/invalid_t_create3.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalid_t_transform.q.out ql/src/test/results/clientnegative/invalid_t_transform.q.out index d091d8c..c882c25 100644 --- ql/src/test/results/clientnegative/invalid_t_transform.q.out +++ ql/src/test/results/clientnegative/invalid_t_transform.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead. +FAILED: Error in semantic analysis: DATE, DATETIME, and TIMESTAMP types aren't supported yet. Please use STRING instead diff --git ql/src/test/results/clientnegative/invalidate_view1.q.out ql/src/test/results/clientnegative/invalidate_view1.q.out index 9f61228..20e0d7c 100644 --- ql/src/test/results/clientnegative/invalidate_view1.q.out +++ ql/src/test/results/clientnegative/invalidate_view1.q.out @@ -19,18 +19,18 @@ POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@xxx10 PREHOOK: query: CREATE VIEW xxx9 AS SELECT * FROM xxx10 PREHOOK: type: CREATEVIEW -PREHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-05_20-52-14_588_3232160525939411769/-mr-10000 +PREHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-11_12-10-09_986_3605866348000607411/-mr-10000 POSTHOOK: query: CREATE VIEW xxx9 AS SELECT * FROM xxx10 POSTHOOK: type: CREATEVIEW POSTHOOK: Output: default@xxx9 -POSTHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-05_20-52-14_588_3232160525939411769/-mr-10000 +POSTHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-11_12-10-09_986_3605866348000607411/-mr-10000 PREHOOK: query: CREATE VIEW xxx8 AS SELECT * FROM xxx9 xxx PREHOOK: type: CREATEVIEW -PREHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-05_20-52-14_617_9002044296975800480/-mr-10000 +PREHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-11_12-10-10_017_1075686745843891926/-mr-10000 POSTHOOK: query: CREATE VIEW xxx8 AS SELECT * FROM xxx9 xxx POSTHOOK: type: CREATEVIEW POSTHOOK: Output: default@xxx8 -POSTHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-05_20-52-14_617_9002044296975800480/-mr-10000 +POSTHOOK: Output: file:/var/folders/5V/5V4Zq77qGD4aSK9m8V3frVsFdRU/-Tmp-/salbiz/hive_2011-05-11_12-10-10_017_1075686745843891926/-mr-10000 PREHOOK: query: ALTER TABLE xxx10 REPLACE COLUMNS (key int) PREHOOK: type: ALTERTABLE_REPLACECOLS PREHOOK: Input: default@xxx10 @@ -39,7 +39,7 @@ POSTHOOK: query: ALTER TABLE xxx10 REPLACE COLUMNS (key int) POSTHOOK: type: ALTERTABLE_REPLACECOLS POSTHOOK: Input: default@xxx10 POSTHOOK: Output: default@xxx10 -FAILED: Error in semantic analysis: Line 1:30 Invalid column reference `value` in definition of VIEW xxx9 [ +FAILED: Error in semantic analysis: Line 1:30 Invalid column reference '`value`' in definition of VIEW xxx9 [ SELECT `xxx10`.`key`, `xxx10`.`value` FROM `xxx10` ] used as xxx at Line 1:39 in definition of VIEW xxx8 [ SELECT `xxx`.`key`, `xxx`.`value` FROM `xxx9` `xxx` diff --git ql/src/test/results/clientnegative/joinneg.q.out ql/src/test/results/clientnegative/joinneg.q.out index d85d508..7dd8354 100644 --- ql/src/test/results/clientnegative/joinneg.q.out +++ ql/src/test/results/clientnegative/joinneg.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 5:12 Invalid table alias b +FAILED: Error in semantic analysis: Line 5:12 Invalid table alias 'b' diff --git ql/src/test/results/clientnegative/line_terminator.q.out ql/src/test/results/clientnegative/line_terminator.q.out index b672bd8..2b7e3fc 100644 --- ql/src/test/results/clientnegative/line_terminator.q.out +++ ql/src/test/results/clientnegative/line_terminator.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: LINES TERMINATED BY only supports newline '\n' right now +FAILED: Error in semantic analysis: Line 3:20 LINES TERMINATED BY only supports newline '\n' right now '','' diff --git ql/src/test/results/clientnegative/load_part_nospec.q.out ql/src/test/results/clientnegative/load_part_nospec.q.out index 251c7e1..20d425a 100644 --- ql/src/test/results/clientnegative/load_part_nospec.q.out +++ ql/src/test/results/clientnegative/load_part_nospec.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: create table hive_test_src ( col1 string ) partitioned by (pcol1 string) stored as textfile POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@hive_test_src -FAILED: Error in semantic analysis: Need to specify partition columns because the destination table is partitioned. +FAILED: Error in semantic analysis: Need to specify partition columns because the destination table is partitioned diff --git ql/src/test/results/clientnegative/load_wrong_noof_part.q.out ql/src/test/results/clientnegative/load_wrong_noof_part.q.out index 4d8c8d8..e785322 100644 --- ql/src/test/results/clientnegative/load_wrong_noof_part.q.out +++ ql/src/test/results/clientnegative/load_wrong_noof_part.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE loadpart1(a STRING, b STRING) PARTITIONED BY (ds STRING,ds1 STRING) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@loadpart1 -FAILED: Error in semantic analysis: Line 2:79 Partition not found '2009-05-05' +FAILED: Error in semantic analysis: Line 2:79 Partition not found ''2009-05-05'' diff --git ql/src/test/results/clientnegative/nopart_insert.q.out ql/src/test/results/clientnegative/nopart_insert.q.out index 42bca76..1f684f3 100644 --- ql/src/test/results/clientnegative/nopart_insert.q.out +++ ql/src/test/results/clientnegative/nopart_insert.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE nopart_insert(a STRING, b STRING) PARTITIONED BY (ds STRING) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@nopart_insert -FAILED: Error in semantic analysis: Need to specify partition columns because the destination table is partitioned. +FAILED: Error in semantic analysis: 3:23 Need to specify partition columns because the destination table is partitioned. Error encountered near token 'nopart_insert' diff --git ql/src/test/results/clientnegative/nopart_load.q.out ql/src/test/results/clientnegative/nopart_load.q.out index 31376c8..804748d 100644 --- ql/src/test/results/clientnegative/nopart_load.q.out +++ ql/src/test/results/clientnegative/nopart_load.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE nopart_load(a STRING, b STRING) PARTITIONED BY (ds STRING) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@nopart_load -FAILED: Error in semantic analysis: Need to specify partition columns because the destination table is partitioned. +FAILED: Error in semantic analysis: Need to specify partition columns because the destination table is partitioned diff --git ql/src/test/results/clientnegative/notable_alias3.q.out ql/src/test/results/clientnegative/notable_alias3.q.out index d48d5e1..02d4297 100644 --- ql/src/test/results/clientnegative/notable_alias3.q.out +++ ql/src/test/results/clientnegative/notable_alias3.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE dest1(key INT, value DOUBLE) STORED AS TEXTFILE POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@dest1 -FAILED: Error in semantic analysis: Line 4:44 Expression not in GROUP BY key src +FAILED: Error in semantic analysis: Line 4:44 Expression not in GROUP BY key 'key' diff --git ql/src/test/results/clientnegative/orderbysortby.q.out ql/src/test/results/clientnegative/orderbysortby.q.out index 73b83a4..c097fdb 100644 --- ql/src/test/results/clientnegative/orderbysortby.q.out +++ ql/src/test/results/clientnegative/orderbysortby.q.out @@ -3,4 +3,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: CREATE TABLE dest1(key INT, ten INT, one INT, value STRING) STORED AS TEXTFILE POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@dest1 -FAILED: Error in semantic analysis: Line 8:8 Cannot have both ORDER BY and SORT BY clauses one +FAILED: Error in semantic analysis: Line 8:8 Cannot have both ORDER BY and SORT BY clauses 'one' diff --git ql/src/test/results/clientnegative/regex_col_1.q.out ql/src/test/results/clientnegative/regex_col_1.q.out index 7547858..d0c8c33 100644 --- ql/src/test/results/clientnegative/regex_col_1.q.out +++ ql/src/test/results/clientnegative/regex_col_1.q.out @@ -1,3 +1,3 @@ -FAILED: Error in semantic analysis: Line 2:7 Invalid column reference `+++`: Dangling meta character '+' near index 0 +FAILED: Error in semantic analysis: Line 2:7 Invalid column reference '`+++`': Dangling meta character '+' near index 0 +++ ^ diff --git ql/src/test/results/clientnegative/regex_col_2.q.out ql/src/test/results/clientnegative/regex_col_2.q.out index f570010..2261b3a 100644 --- ql/src/test/results/clientnegative/regex_col_2.q.out +++ ql/src/test/results/clientnegative/regex_col_2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:7 Invalid column reference `.a.` +FAILED: Error in semantic analysis: Line 2:7 Invalid column reference '`.a.`' diff --git ql/src/test/results/clientnegative/regex_col_groupby.q.out ql/src/test/results/clientnegative/regex_col_groupby.q.out index 8497718..f7f31f5 100644 --- ql/src/test/results/clientnegative/regex_col_groupby.q.out +++ ql/src/test/results/clientnegative/regex_col_groupby.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:44 Invalid table alias or column reference `..` +FAILED: Error in semantic analysis: Line 2:44 Invalid table alias or column reference '`..`' diff --git ql/src/test/results/clientnegative/semijoin1.q.out ql/src/test/results/clientnegative/semijoin1.q.out index 739931f..6af3243 100644 --- ql/src/test/results/clientnegative/semijoin1.q.out +++ ql/src/test/results/clientnegative/semijoin1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:7 Invalid table alias or column reference b +FAILED: Error in semantic analysis: Line 2:7 Invalid table alias or column reference 'b' diff --git ql/src/test/results/clientnegative/semijoin2.q.out ql/src/test/results/clientnegative/semijoin2.q.out index 2b418de..fc5976e 100644 --- ql/src/test/results/clientnegative/semijoin2.q.out +++ ql/src/test/results/clientnegative/semijoin2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:70 Invalid table alias or column reference b +FAILED: Error in semantic analysis: Line 2:70 Invalid table alias or column reference 'b' diff --git ql/src/test/results/clientnegative/semijoin3.q.out ql/src/test/results/clientnegative/semijoin3.q.out index a803b50..ccf581e 100644 --- ql/src/test/results/clientnegative/semijoin3.q.out +++ ql/src/test/results/clientnegative/semijoin3.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:67 Invalid table alias or column reference b +FAILED: Error in semantic analysis: Line 2:67 Invalid table alias or column reference 'b' diff --git ql/src/test/results/clientnegative/semijoin4.q.out ql/src/test/results/clientnegative/semijoin4.q.out index 86a834b..0d4523e 100644 --- ql/src/test/results/clientnegative/semijoin4.q.out +++ ql/src/test/results/clientnegative/semijoin4.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:112 Invalid table alias or column reference b +FAILED: Error in semantic analysis: Line 2:112 Invalid table alias or column reference 'b' diff --git ql/src/test/results/clientnegative/split_sample_out_of_range.q.out ql/src/test/results/clientnegative/split_sample_out_of_range.q.out index 0761955..48bc25e 100644 --- ql/src/test/results/clientnegative/split_sample_out_of_range.q.out +++ ql/src/test/results/clientnegative/split_sample_out_of_range.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Sampling percentage should be between 0 and 100. +FAILED: Error in semantic analysis: 3:32 Sampling percentage should be between 0 and 100. Error encountered near token '105' diff --git ql/src/test/results/clientnegative/split_sample_wrong_format.q.out ql/src/test/results/clientnegative/split_sample_wrong_format.q.out index 19b1417..0c31a13 100644 --- ql/src/test/results/clientnegative/split_sample_wrong_format.q.out +++ ql/src/test/results/clientnegative/split_sample_wrong_format.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Percentage sampling is not supported in org.apache.hadoop.hive.ql.io.HiveInputFormat +FAILED: Error in semantic analysis: 3:32 Percentage sampling is not supported in org.apache.hadoop.hive.ql.io.HiveInputFormat. Error encountered near token '1' diff --git ql/src/test/results/clientnegative/strict_orderby.q.out ql/src/test/results/clientnegative/strict_orderby.q.out index 2d3ba6b..69aa554 100644 --- ql/src/test/results/clientnegative/strict_orderby.q.out +++ ql/src/test/results/clientnegative/strict_orderby.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 4:44 In strict mode, if ORDER BY is specified, LIMIT must also be specified key +FAILED: Error in semantic analysis: Line 4:44 In strict mode, if ORDER BY is specified, LIMIT must also be specified 'key' diff --git ql/src/test/results/clientnegative/subq_insert.q.out ql/src/test/results/clientnegative/subq_insert.q.out index 8c3ce79..eaf85cb 100644 --- ql/src/test/results/clientnegative/subq_insert.q.out +++ ql/src/test/results/clientnegative/subq_insert.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:38 Cannot insert in a subquery. Inserting to table src1 +FAILED: Error in semantic analysis: Line 2:38 Cannot insert in a subquery. Inserting to table 'src1' diff --git ql/src/test/results/clientnegative/udf_array_contains_wrong1.q.out ql/src/test/results/clientnegative/udf_array_contains_wrong1.q.out index d6b98b4..644247c 100644 --- ql/src/test/results/clientnegative/udf_array_contains_wrong1.q.out +++ ql/src/test/results/clientnegative/udf_array_contains_wrong1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:22 Argument type mismatch 1: "array" expected at function ARRAY_CONTAINS, but "int" is found +FAILED: Error in semantic analysis: Line 2:22 Argument type mismatch '1': "array" expected at function ARRAY_CONTAINS, but "int" is found diff --git ql/src/test/results/clientnegative/udf_array_contains_wrong2.q.out ql/src/test/results/clientnegative/udf_array_contains_wrong2.q.out index 7b8dca6..3e6be58 100644 --- ql/src/test/results/clientnegative/udf_array_contains_wrong2.q.out +++ ql/src/test/results/clientnegative/udf_array_contains_wrong2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:38 Argument type mismatch '2': "int" expected at function ARRAY_CONTAINS, but "string" is found +FAILED: Error in semantic analysis: Line 2:38 Argument type mismatch ''2'': "int" expected at function ARRAY_CONTAINS, but "string" is found diff --git ql/src/test/results/clientnegative/udf_case_type_wrong.q.out ql/src/test/results/clientnegative/udf_case_type_wrong.q.out index 75b9638..045513c 100644 --- ql/src/test/results/clientnegative/udf_case_type_wrong.q.out +++ ql/src/test/results/clientnegative/udf_case_type_wrong.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:13 Argument type mismatch 1: The expressions after WHEN should have the same type with that after CASE: "string" is expected but "int" is found +FAILED: Error in semantic analysis: Line 2:13 Argument type mismatch '1': The expressions after WHEN should have the same type with that after CASE: "string" is expected but "int" is found diff --git ql/src/test/results/clientnegative/udf_case_type_wrong2.q.out ql/src/test/results/clientnegative/udf_case_type_wrong2.q.out index 126fa4e..0a8b434 100644 --- ql/src/test/results/clientnegative/udf_case_type_wrong2.q.out +++ ql/src/test/results/clientnegative/udf_case_type_wrong2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 3:20 Argument type mismatch 4: The expressions after THEN should have the same type: "string" is expected but "int" is found +FAILED: Error in semantic analysis: Line 3:20 Argument type mismatch '4': The expressions after THEN should have the same type: "string" is expected but "int" is found diff --git ql/src/test/results/clientnegative/udf_case_type_wrong3.q.out ql/src/test/results/clientnegative/udf_case_type_wrong3.q.out index fd62771..14e68ea 100644 --- ql/src/test/results/clientnegative/udf_case_type_wrong3.q.out +++ ql/src/test/results/clientnegative/udf_case_type_wrong3.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 4:13 Argument type mismatch 7: The expression after ELSE should have the same type as those after THEN: "string" is expected but "int" is found +FAILED: Error in semantic analysis: Line 4:13 Argument type mismatch '7': The expression after ELSE should have the same type as those after THEN: "string" is expected but "int" is found diff --git ql/src/test/results/clientnegative/udf_coalesce.q.out ql/src/test/results/clientnegative/udf_coalesce.q.out index a5279f5..a4c3cab 100644 --- ql/src/test/results/clientnegative/udf_coalesce.q.out +++ ql/src/test/results/clientnegative/udf_coalesce.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:19 Argument type mismatch 2.0: The expressions after COALESCE should all have the same type: "int" is expected but "double" is found +FAILED: Error in semantic analysis: Line 1:19 Argument type mismatch '2.0': The expressions after COALESCE should all have the same type: "int" is expected but "double" is found diff --git ql/src/test/results/clientnegative/udf_elt_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_elt_wrong_args_len.q.out index 22a085a..041d7d9 100644 --- ql/src/test/results/clientnegative/udf_elt_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_elt_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch 3: The function ELT(N,str1,str2,str3,...) needs at least two arguments. +FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch '3': The function ELT(N,str1,str2,str3,...) needs at least two arguments. diff --git ql/src/test/results/clientnegative/udf_elt_wrong_type.q.out ql/src/test/results/clientnegative/udf_elt_wrong_type.q.out index fc83f23..be62440 100644 --- ql/src/test/results/clientnegative/udf_elt_wrong_type.q.out +++ ql/src/test/results/clientnegative/udf_elt_wrong_type.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:14 Argument type mismatch lintstring: The 2nd argument of function ELT is expected to a primitive type, but list is found +FAILED: Error in semantic analysis: Line 2:14 Argument type mismatch 'lintstring': The 2nd argument of function ELT is expected to a primitive type, but list is found diff --git ql/src/test/results/clientnegative/udf_field_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_field_wrong_args_len.q.out index 3bf97d9..5da47d0 100644 --- ql/src/test/results/clientnegative/udf_field_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_field_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Wrong arguments 3: The function FIELD(str, str1, str2, ...) needs at least two arguments. +FAILED: Error in semantic analysis: Line 1:7 Wrong arguments '3': The function FIELD(str, str1, str2, ...) needs at least two arguments. diff --git ql/src/test/results/clientnegative/udf_field_wrong_type.q.out ql/src/test/results/clientnegative/udf_field_wrong_type.q.out index 2a2e944..5994402 100644 --- ql/src/test/results/clientnegative/udf_field_wrong_type.q.out +++ ql/src/test/results/clientnegative/udf_field_wrong_type.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:16 Argument type mismatch lintstring: The 2nd argument of function FIELD is expected to a primitive type, but list is found +FAILED: Error in semantic analysis: Line 2:16 Argument type mismatch 'lintstring': The 2nd argument of function FIELD is expected to a primitive type, but list is found diff --git ql/src/test/results/clientnegative/udf_if_not_bool.q.out ql/src/test/results/clientnegative/udf_if_not_bool.q.out index a3c8902..c64911d 100644 --- ql/src/test/results/clientnegative/udf_if_not_bool.q.out +++ ql/src/test/results/clientnegative/udf_if_not_bool.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:10 Argument type mismatch 'STRING': The first argument of function IF should be "boolean", but "string" is found +FAILED: Error in semantic analysis: Line 1:10 Argument type mismatch ''STRING'': The first argument of function IF should be "boolean", but "string" is found diff --git ql/src/test/results/clientnegative/udf_if_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_if_wrong_args_len.q.out index 89b23c8..a4943f1 100644 --- ql/src/test/results/clientnegative/udf_if_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_if_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch 1: The function IF(expr1,expr2,expr3) accepts exactly 3 arguments. +FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch '1': The function IF(expr1,expr2,expr3) accepts exactly 3 arguments. diff --git ql/src/test/results/clientnegative/udf_in.q.out ql/src/test/results/clientnegative/udf_in.q.out index 50a6b98..0e7fb59 100644 --- ql/src/test/results/clientnegative/udf_in.q.out +++ ql/src/test/results/clientnegative/udf_in.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:9 Wrong arguments 3: The arguments for IN should be the same type! Types are: {int IN (array)} +FAILED: Error in semantic analysis: Line 1:9 Wrong arguments '3': The arguments for IN should be the same type! Types are: {int IN (array)} diff --git ql/src/test/results/clientnegative/udf_instr_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_instr_wrong_args_len.q.out index 7f66db7..22d5f64 100644 --- ql/src/test/results/clientnegative/udf_instr_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_instr_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch 'abcd': The function INSTR accepts exactly 2 arguments. +FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch ''abcd'': The function INSTR accepts exactly 2 arguments. diff --git ql/src/test/results/clientnegative/udf_instr_wrong_type.q.out ql/src/test/results/clientnegative/udf_instr_wrong_type.q.out index 89d8542..ed09a39 100644 --- ql/src/test/results/clientnegative/udf_instr_wrong_type.q.out +++ ql/src/test/results/clientnegative/udf_instr_wrong_type.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:21 Argument type mismatch lintstring: The 2nd argument of function INSTR is expected to a primitive type, but list is found +FAILED: Error in semantic analysis: Line 2:21 Argument type mismatch 'lintstring': The 2nd argument of function INSTR is expected to a primitive type, but list is found diff --git ql/src/test/results/clientnegative/udf_locate_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_locate_wrong_args_len.q.out index 46613e8..331f53c 100644 --- ql/src/test/results/clientnegative/udf_locate_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_locate_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch 2: The function LOCATE accepts exactly 2 or 3 arguments. +FAILED: Error in semantic analysis: Line 1:7 Arguments length mismatch '2': The function LOCATE accepts exactly 2 or 3 arguments. diff --git ql/src/test/results/clientnegative/udf_locate_wrong_type.q.out ql/src/test/results/clientnegative/udf_locate_wrong_type.q.out index 42cc4b6..162db30 100644 --- ql/src/test/results/clientnegative/udf_locate_wrong_type.q.out +++ ql/src/test/results/clientnegative/udf_locate_wrong_type.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:22 Argument type mismatch lintstring: The 2nd argument of function LOCATE is expected to a primitive type, but list is found +FAILED: Error in semantic analysis: Line 2:22 Argument type mismatch 'lintstring': The 2nd argument of function LOCATE is expected to a primitive type, but list is found diff --git ql/src/test/results/clientnegative/udf_size_wrong_args_len.q.out ql/src/test/results/clientnegative/udf_size_wrong_args_len.q.out index b05731e..7ee87b6 100644 --- ql/src/test/results/clientnegative/udf_size_wrong_args_len.q.out +++ ql/src/test/results/clientnegative/udf_size_wrong_args_len.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 2:7 Arguments length mismatch lintstring: The function SIZE only accepts 1 argument. +FAILED: Error in semantic analysis: Line 2:7 Arguments length mismatch 'lintstring': The function SIZE only accepts 1 argument. diff --git ql/src/test/results/clientnegative/udf_size_wrong_type.q.out ql/src/test/results/clientnegative/udf_size_wrong_type.q.out index 0c91c8f..81dc947 100644 --- ql/src/test/results/clientnegative/udf_size_wrong_type.q.out +++ ql/src/test/results/clientnegative/udf_size_wrong_type.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 1:12 Argument type mismatch 'wrong type: string': "map" or "list" is expected at function SIZE, but "string" is found +FAILED: Error in semantic analysis: Line 1:12 Argument type mismatch ''wrong type: string'': "map" or "list" is expected at function SIZE, but "string" is found diff --git ql/src/test/results/clientnegative/udf_when_type_wrong.q.out ql/src/test/results/clientnegative/udf_when_type_wrong.q.out index bec3725..e7264ff 100644 --- ql/src/test/results/clientnegative/udf_when_type_wrong.q.out +++ ql/src/test/results/clientnegative/udf_when_type_wrong.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 3:13 Argument type mismatch '1': "boolean" is expected after WHEN, but "string" is found +FAILED: Error in semantic analysis: Line 3:13 Argument type mismatch ''1'': "boolean" is expected after WHEN, but "string" is found diff --git ql/src/test/results/clientnegative/udf_when_type_wrong2.q.out ql/src/test/results/clientnegative/udf_when_type_wrong2.q.out index 5b06467..0b7bc85 100644 --- ql/src/test/results/clientnegative/udf_when_type_wrong2.q.out +++ ql/src/test/results/clientnegative/udf_when_type_wrong2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 3:22 Argument type mismatch 4: The expressions after THEN should have the same type: "string" is expected but "int" is found +FAILED: Error in semantic analysis: Line 3:22 Argument type mismatch '4': The expressions after THEN should have the same type: "string" is expected but "int" is found diff --git ql/src/test/results/clientnegative/udf_when_type_wrong3.q.out ql/src/test/results/clientnegative/udf_when_type_wrong3.q.out index 6974dd7..be01ab9 100644 --- ql/src/test/results/clientnegative/udf_when_type_wrong3.q.out +++ ql/src/test/results/clientnegative/udf_when_type_wrong3.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Line 4:13 Argument type mismatch 5.3: The expression after ELSE should have the same type as those after THEN: "string" is expected but "double" is found +FAILED: Error in semantic analysis: Line 4:13 Argument type mismatch '5.3': The expression after ELSE should have the same type as those after THEN: "string" is expected but "double" is found diff --git ql/src/test/results/clientnegative/udtf_not_supported1.q.out ql/src/test/results/clientnegative/udtf_not_supported1.q.out index cc5f23b..694af76 100644 --- ql/src/test/results/clientnegative/udtf_not_supported1.q.out +++ ql/src/test/results/clientnegative/udtf_not_supported1.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Only a single expression in the SELECT clause is supported with UDTF's +FAILED: Error in semantic analysis: 1:39 Only a single expression in the SELECT clause is supported with UDTF's. Error encountered near token 'key' diff --git ql/src/test/results/clientnegative/udtf_not_supported2.q.out ql/src/test/results/clientnegative/udtf_not_supported2.q.out index c8987ea..4e46415 100644 --- ql/src/test/results/clientnegative/udtf_not_supported2.q.out +++ ql/src/test/results/clientnegative/udtf_not_supported2.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: UDTF's require an AS clause +FAILED: Error in semantic analysis: 1:7 UDTF's require an AS clause. Error encountered near token '3' diff --git ql/src/test/results/clientnegative/union.q.out ql/src/test/results/clientnegative/union.q.out index 333230d..971ce00 100644 --- ql/src/test/results/clientnegative/union.q.out +++ ql/src/test/results/clientnegative/union.q.out @@ -1 +1 @@ -FAILED: Error in semantic analysis: Top level UNION is not supported currently; use a subquery for the UNION +FAILED: Error in semantic analysis: 2:45 Top level UNION is not supported currently; use a subquery for the UNION. Error encountered near token 'value' diff --git ql/src/test/results/clientnegative/union2.q.out ql/src/test/results/clientnegative/union2.q.out index 1e6c782..16cfe03 100644 --- ql/src/test/results/clientnegative/union2.q.out +++ ql/src/test/results/clientnegative/union2.q.out @@ -8,4 +8,4 @@ PREHOOK: type: CREATETABLE POSTHOOK: query: create table if not exists union2_t2(s string, c string, v string) POSTHOOK: type: CREATETABLE POSTHOOK: Output: default@union2_t2 -FAILED: Error in semantic analysis: Schema of both sides of union should match: Column v is of type string on first table and type double on second table +FAILED: Error in semantic analysis: 8:47 Schema of both sides of union should match: Column v is of type string on first table and type double on second table. Error encountered near token 'union2_t2' diff --git ql/src/test/results/clientnegative/union3.q.out ql/src/test/results/clientnegative/union3.q.out new file mode 100644 index 0000000..09e9401 --- /dev/null +++ ql/src/test/results/clientnegative/union3.q.out @@ -0,0 +1,10 @@ +PREHOOK: query: -- Ensure that UNION ALL columns are in the correct order on both sides +-- Ensure that the appropriate error message is propagated +CREATE TABLE IF NOT EXISTS union3 (bar int, baz int) +PREHOOK: type: CREATETABLE +POSTHOOK: query: -- Ensure that UNION ALL columns are in the correct order on both sides +-- Ensure that the appropriate error message is propagated +CREATE TABLE IF NOT EXISTS union3 (bar int, baz int) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: default@union3 +FAILED: Error in semantic analysis: 2:85 Schema of both sides of union should match: field bar: appears on the left side of the UNION at column position: 0, and on the right side of the UNION at column position: 1. Column positions should match for a UNION. Error encountered near token 'union3' diff --git ql/src/test/results/compiler/errors/ambiguous_table_col.q.out ql/src/test/results/compiler/errors/ambiguous_table_col.q.out index 1641ead..bc690f1 100644 --- ql/src/test/results/compiler/errors/ambiguous_table_col.q.out +++ ql/src/test/results/compiler/errors/ambiguous_table_col.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:50 Ambiguous table alias or column reference key \ No newline at end of file +Line 2:50 Ambiguous table alias or column reference 'key' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/duplicate_alias.q.out ql/src/test/results/compiler/errors/duplicate_alias.q.out index 1429744..c0ed623 100644 --- ql/src/test/results/compiler/errors/duplicate_alias.q.out +++ ql/src/test/results/compiler/errors/duplicate_alias.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 1:20 Ambiguous table alias a \ No newline at end of file +Line 1:20 Ambiguous table alias 'a' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/insert_wrong_number_columns.q.out ql/src/test/results/compiler/errors/insert_wrong_number_columns.q.out index 7efe359..1bf1354 100644 --- ql/src/test/results/compiler/errors/insert_wrong_number_columns.q.out +++ ql/src/test/results/compiler/errors/insert_wrong_number_columns.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:23 Cannot insert into target table because column number/types are different dest1: Table insclause-0 has 2 columns, but query has 3 columns. \ No newline at end of file +Line 2:23 Cannot insert into target table because column number/types are different 'dest1': Table insclause-0 has 2 columns, but query has 3 columns. \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_dot.q.out ql/src/test/results/compiler/errors/invalid_dot.q.out index e63be5f..df24ac6 100644 --- ql/src/test/results/compiler/errors/invalid_dot.q.out +++ ql/src/test/results/compiler/errors/invalid_dot.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:36 . Operator is only supported on struct or list of struct types member \ No newline at end of file +Line 2:36 . Operator is only supported on struct or list of struct types 'member' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_function_param2.q.out ql/src/test/results/compiler/errors/invalid_function_param2.q.out index f1f41a1..b131eb5 100644 --- ql/src/test/results/compiler/errors/invalid_function_param2.q.out +++ ql/src/test/results/compiler/errors/invalid_function_param2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:36 Wrong arguments 'abc': No matching method for class org.apache.hadoop.hive.ql.udf.UDFSubstr with (string, string). Possible choices: _FUNC_(string, int, int) _FUNC_(string, int) \ No newline at end of file +Line 2:36 Wrong arguments ''abc'': No matching method for class org.apache.hadoop.hive.ql.udf.UDFSubstr with (string, string). Possible choices: _FUNC_(string, int, int) _FUNC_(string, int) \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_index.q.out ql/src/test/results/compiler/errors/invalid_index.q.out index 77dc0c0..e1909b9 100644 --- ql/src/test/results/compiler/errors/invalid_index.q.out +++ ql/src/test/results/compiler/errors/invalid_index.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:36 [] not valid on non-collection types 0: string \ No newline at end of file +Line 2:36 [] not valid on non-collection types '0': string \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_list_index.q.out ql/src/test/results/compiler/errors/invalid_list_index.q.out index 3714b68..79e85c4 100644 --- ql/src/test/results/compiler/errors/invalid_list_index.q.out +++ ql/src/test/results/compiler/errors/invalid_list_index.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:56 Non-constant expressions for array indexes not supported 'abc' \ No newline at end of file +Line 2:56 Non-constant expressions for array indexes not supported ''abc'' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_list_index2.q.out ql/src/test/results/compiler/errors/invalid_list_index2.q.out index c64b248..4c1aabe 100644 --- ql/src/test/results/compiler/errors/invalid_list_index2.q.out +++ ql/src/test/results/compiler/errors/invalid_list_index2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:56 Non-constant expressions for array indexes not supported 2 \ No newline at end of file +Line 2:56 Non-constant expressions for array indexes not supported '2' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_map_index.q.out ql/src/test/results/compiler/errors/invalid_map_index.q.out index e241bc6..4eb7afa 100644 --- ql/src/test/results/compiler/errors/invalid_map_index.q.out +++ ql/src/test/results/compiler/errors/invalid_map_index.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:56 MAP key type does not match index expression type 0 \ No newline at end of file +Line 2:56 MAP key type does not match index expression type '0' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/invalid_map_index2.q.out ql/src/test/results/compiler/errors/invalid_map_index2.q.out index 1c8d660..0320928 100644 --- ql/src/test/results/compiler/errors/invalid_map_index2.q.out +++ ql/src/test/results/compiler/errors/invalid_map_index2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:56 Non-constant expression for map indexes not supported 'abc' \ No newline at end of file +Line 2:56 Non-constant expression for map indexes not supported ''abc'' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/nonkey_groupby.q.out ql/src/test/results/compiler/errors/nonkey_groupby.q.out index 21a9f46..e90e676 100644 --- ql/src/test/results/compiler/errors/nonkey_groupby.q.out +++ ql/src/test/results/compiler/errors/nonkey_groupby.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:44 Expression not in GROUP BY key src \ No newline at end of file +Line 2:44 Expression not in GROUP BY key 'src' from {((. (tok_table_or_col src) key),_col0: string)} \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column1.q.out ql/src/test/results/compiler/errors/unknown_column1.q.out index 4d89065..933f079 100644 --- ql/src/test/results/compiler/errors/unknown_column1.q.out +++ ql/src/test/results/compiler/errors/unknown_column1.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:48 Invalid column reference dummycol \ No newline at end of file +Line 2:48 Invalid column reference 'dummycol' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column2.q.out ql/src/test/results/compiler/errors/unknown_column2.q.out index 43f31db..b598b87 100644 --- ql/src/test/results/compiler/errors/unknown_column2.q.out +++ ql/src/test/results/compiler/errors/unknown_column2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:64 Invalid column reference dummykey \ No newline at end of file +Line 2:64 Invalid column reference 'dummykey' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column3.q.out ql/src/test/results/compiler/errors/unknown_column3.q.out index d8ee8d0..adbfdd9 100644 --- ql/src/test/results/compiler/errors/unknown_column3.q.out +++ ql/src/test/results/compiler/errors/unknown_column3.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:87 Invalid column reference dummycol \ No newline at end of file +Line 2:87 Invalid column reference 'dummycol' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column4.q.out ql/src/test/results/compiler/errors/unknown_column4.q.out index 24d8c87..5504ed3 100644 --- ql/src/test/results/compiler/errors/unknown_column4.q.out +++ ql/src/test/results/compiler/errors/unknown_column4.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:83 Invalid table alias or column reference dummysrc \ No newline at end of file +Line 2:83 Invalid table alias or column reference 'dummysrc' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column5.q.out ql/src/test/results/compiler/errors/unknown_column5.q.out index d15e993..c90aa66 100644 --- ql/src/test/results/compiler/errors/unknown_column5.q.out +++ ql/src/test/results/compiler/errors/unknown_column5.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:60 Invalid table alias or column reference dummysrc \ No newline at end of file +Line 2:60 Invalid table alias or column reference 'dummysrc' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_column6.q.out ql/src/test/results/compiler/errors/unknown_column6.q.out index aac42d1..8dff75e 100644 --- ql/src/test/results/compiler/errors/unknown_column6.q.out +++ ql/src/test/results/compiler/errors/unknown_column6.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:44 Expression not in GROUP BY key dummysrc \ No newline at end of file +Line 2:44 Expression not in GROUP BY key 'dummysrc' from {((. (tok_table_or_col src) key),_col0: string)} \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_function1.q.out ql/src/test/results/compiler/errors/unknown_function1.q.out index 5180f38..c6af515 100644 --- ql/src/test/results/compiler/errors/unknown_function1.q.out +++ ql/src/test/results/compiler/errors/unknown_function1.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:44 Invalid function dummyfn \ No newline at end of file +Line 2:44 Invalid function 'dummyfn' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_function2.q.out ql/src/test/results/compiler/errors/unknown_function2.q.out index dcb97bc..88b15ec 100644 --- ql/src/test/results/compiler/errors/unknown_function2.q.out +++ ql/src/test/results/compiler/errors/unknown_function2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:60 Invalid function anotherdummyfn \ No newline at end of file +Line 2:60 Invalid function 'anotherdummyfn' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_function3.q.out ql/src/test/results/compiler/errors/unknown_function3.q.out index dcb97bc..88b15ec 100644 --- ql/src/test/results/compiler/errors/unknown_function3.q.out +++ ql/src/test/results/compiler/errors/unknown_function3.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:60 Invalid function anotherdummyfn \ No newline at end of file +Line 2:60 Invalid function 'anotherdummyfn' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_function4.q.out ql/src/test/results/compiler/errors/unknown_function4.q.out index 5180f38..c6af515 100644 --- ql/src/test/results/compiler/errors/unknown_function4.q.out +++ ql/src/test/results/compiler/errors/unknown_function4.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:44 Invalid function dummyfn \ No newline at end of file +Line 2:44 Invalid function 'dummyfn' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_table1.q.out ql/src/test/results/compiler/errors/unknown_table1.q.out index ff92e4e..d5743a3 100644 --- ql/src/test/results/compiler/errors/unknown_table1.q.out +++ ql/src/test/results/compiler/errors/unknown_table1.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 1:5 Table not found dummySrc \ No newline at end of file +Line 1:5 Table not found 'dummySrc' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/unknown_table2.q.out ql/src/test/results/compiler/errors/unknown_table2.q.out index 54185e4..d031fae 100644 --- ql/src/test/results/compiler/errors/unknown_table2.q.out +++ ql/src/test/results/compiler/errors/unknown_table2.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:23 Table not found dummyDest \ No newline at end of file +Line 2:23 Table not found 'dummyDest' \ No newline at end of file diff --git ql/src/test/results/compiler/errors/wrong_distinct1.q.out ql/src/test/results/compiler/errors/wrong_distinct1.q.out index 74bc6e6..8236b6f 100644 --- ql/src/test/results/compiler/errors/wrong_distinct1.q.out +++ ql/src/test/results/compiler/errors/wrong_distinct1.q.out @@ -1,2 +1,2 @@ Semantic Exception: -Line 2:85 SELECT DISTINCT and GROUP BY can not be in the same query key \ No newline at end of file +Line 2:85 SELECT DISTINCT and GROUP BY can not be in the same query 'key' \ No newline at end of file -- 1.7.4.4