You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ke...@apache.org on 2012/07/20 03:04:35 UTC
svn commit: r1363610 - in /hive/trunk/ql/src:
java/org/apache/hadoop/hive/ql/parse/ test/queries/clientpositive/
test/results/clientpositive/
Author: kevinwilfong
Date: Fri Jul 20 01:04:34 2012
New Revision: 1363610
URL: http://svn.apache.org/viewvc?rev=1363610&view=rev
Log:
HIVE-3267. escaped columns in cluster/distribute/order/sort by are not working. (njain via kevinwilfong)
Added:
hive/trunk/ql/src/test/queries/clientpositive/escape_clusterby1.q
hive/trunk/ql/src/test/queries/clientpositive/escape_distributeby1.q
hive/trunk/ql/src/test/queries/clientpositive/escape_orderby1.q
hive/trunk/ql/src/test/queries/clientpositive/escape_sortby1.q
hive/trunk/ql/src/test/results/clientpositive/escape_clusterby1.q.out
hive/trunk/ql/src/test/results/clientpositive/escape_distributeby1.q.out
hive/trunk/ql/src/test/results/clientpositive/escape_orderby1.q.out
hive/trunk/ql/src/test/results/clientpositive/escape_sortby1.q.out
Modified:
hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java
hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java?rev=1363610&r1=1363609&r2=1363610&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java Fri Jul 20 01:04:34 2012
@@ -123,7 +123,7 @@ public class RowResolver implements Seri
* values is returned.
*
* This allows us to interpret both select t.c1 type of references and select
- * c1 kind of refereneces. The later kind are what we call non aliased column
+ * c1 kind of references. The later kind are what we call non aliased column
* references in the query.
*
* @param tab_alias
Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java?rev=1363610&r1=1363609&r2=1363610&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java Fri Jul 20 01:04:34 2012
@@ -2046,7 +2046,8 @@ public class SemanticAnalyzer extends Ba
ASTNode root = (ASTNode) selExpr.getChild(0);
if (root.getType() == HiveParser.TOK_TABLE_OR_COL) {
- colAlias = root.getChild(0).getText();
+ colAlias =
+ BaseSemanticAnalyzer.unescapeIdentifier(root.getChild(0).getText());
colRef[0] = tabAlias;
colRef[1] = colAlias;
return colRef;
Added: hive/trunk/ql/src/test/queries/clientpositive/escape_clusterby1.q
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/escape_clusterby1.q?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/escape_clusterby1.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/escape_clusterby1.q Fri Jul 20 01:04:34 2012
@@ -0,0 +1,6 @@
+-- escaped column names in cluster by are not working jira 3267
+explain
+select key, value from src cluster by key, value;
+
+explain
+select `key`, value from src cluster by `key`, value;
Added: hive/trunk/ql/src/test/queries/clientpositive/escape_distributeby1.q
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/escape_distributeby1.q?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/escape_distributeby1.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/escape_distributeby1.q Fri Jul 20 01:04:34 2012
@@ -0,0 +1,6 @@
+-- escaped column names in distribute by by are not working jira 3267
+explain
+select key, value from src distribute by key, value;
+
+explain
+select `key`, value from src distribute by `key`, value;
Added: hive/trunk/ql/src/test/queries/clientpositive/escape_orderby1.q
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/escape_orderby1.q?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/escape_orderby1.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/escape_orderby1.q Fri Jul 20 01:04:34 2012
@@ -0,0 +1,6 @@
+-- escaped column names in order by are not working jira 3267
+explain
+select key, value from src order by key, value;
+
+explain
+select `key`, value from src order by `key`, value;
Added: hive/trunk/ql/src/test/queries/clientpositive/escape_sortby1.q
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/escape_sortby1.q?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/escape_sortby1.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/escape_sortby1.q Fri Jul 20 01:04:34 2012
@@ -0,0 +1,6 @@
+-- escaped column names in sort by are not working jira 3267
+explain
+select key, value from src sort by key, value;
+
+explain
+select `key`, value from src sort by `key`, value;
Added: hive/trunk/ql/src/test/results/clientpositive/escape_clusterby1.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/escape_clusterby1.q.out?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/escape_clusterby1.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/escape_clusterby1.q.out Fri Jul 20 01:04:34 2012
@@ -0,0 +1,120 @@
+PREHOOK: query: -- escaped column names in cluster by are not working jira 3267
+explain
+select key, value from src cluster by key, value
+PREHOOK: type: QUERY
+POSTHOOK: query: -- escaped column names in cluster by are not working jira 3267
+explain
+select key, value from src cluster by key, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL key) (TOK_TABLE_OR_COL value))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ Map-reduce partition columns:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
+PREHOOK: query: explain
+select `key`, value from src cluster by `key`, value
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select `key`, value from src cluster by `key`, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_CLUSTERBY (TOK_TABLE_OR_COL `key`) (TOK_TABLE_OR_COL value))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ Map-reduce partition columns:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
Added: hive/trunk/ql/src/test/results/clientpositive/escape_distributeby1.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/escape_distributeby1.q.out?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/escape_distributeby1.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/escape_distributeby1.q.out Fri Jul 20 01:04:34 2012
@@ -0,0 +1,110 @@
+PREHOOK: query: -- escaped column names in distribute by by are not working jira 3267
+explain
+select key, value from src distribute by key, value
+PREHOOK: type: QUERY
+POSTHOOK: query: -- escaped column names in distribute by by are not working jira 3267
+explain
+select key, value from src distribute by key, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_DISTRIBUTEBY (TOK_TABLE_OR_COL key) (TOK_TABLE_OR_COL value))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ sort order:
+ Map-reduce partition columns:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
+PREHOOK: query: explain
+select `key`, value from src distribute by `key`, value
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select `key`, value from src distribute by `key`, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_DISTRIBUTEBY (TOK_TABLE_OR_COL `key`) (TOK_TABLE_OR_COL value))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ sort order:
+ Map-reduce partition columns:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
Added: hive/trunk/ql/src/test/results/clientpositive/escape_orderby1.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/escape_orderby1.q.out?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/escape_orderby1.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/escape_orderby1.q.out Fri Jul 20 01:04:34 2012
@@ -0,0 +1,110 @@
+PREHOOK: query: -- escaped column names in order by are not working jira 3267
+explain
+select key, value from src order by key, value
+PREHOOK: type: QUERY
+POSTHOOK: query: -- escaped column names in order by are not working jira 3267
+explain
+select key, value from src order by key, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_ORDERBY (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL key)) (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL value)))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
+PREHOOK: query: explain
+select `key`, value from src order by `key`, value
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select `key`, value from src order by `key`, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_ORDERBY (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL `key`)) (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL value)))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
Added: hive/trunk/ql/src/test/results/clientpositive/escape_sortby1.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/escape_sortby1.q.out?rev=1363610&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/escape_sortby1.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/escape_sortby1.q.out Fri Jul 20 01:04:34 2012
@@ -0,0 +1,110 @@
+PREHOOK: query: -- escaped column names in sort by are not working jira 3267
+explain
+select key, value from src sort by key, value
+PREHOOK: type: QUERY
+POSTHOOK: query: -- escaped column names in sort by are not working jira 3267
+explain
+select key, value from src sort by key, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_SORTBY (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL key)) (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL value)))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+
+PREHOOK: query: explain
+select `key`, value from src sort by `key`, value
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select `key`, value from src sort by `key`, value
+POSTHOOK: type: QUERY
+ABSTRACT SYNTAX TREE:
+ (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))) (TOK_SORTBY (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL `key`)) (TOK_TABSORTCOLNAMEASC (TOK_TABLE_OR_COL value)))))
+
+STAGE DEPENDENCIES:
+ Stage-1 is a root stage
+ Stage-0 is a root stage
+
+STAGE PLANS:
+ Stage: Stage-1
+ Map Reduce
+ Alias -> Map Operator Tree:
+ src
+ TableScan
+ alias: src
+ Select Operator
+ expressions:
+ expr: key
+ type: string
+ expr: value
+ type: string
+ outputColumnNames: _col0, _col1
+ Reduce Output Operator
+ key expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ sort order: ++
+ tag: -1
+ value expressions:
+ expr: _col0
+ type: string
+ expr: _col1
+ type: string
+ Reduce Operator Tree:
+ Extract
+ File Output Operator
+ compressed: false
+ GlobalTableId: 0
+ table:
+ input format: org.apache.hadoop.mapred.TextInputFormat
+ output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
+
+ Stage: Stage-0
+ Fetch Operator
+ limit: -1
+
+