You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by zs...@apache.org on 2008/12/17 00:16:31 UTC
svn commit: r727211 [1/2] - in /hadoop/hive/trunk: CHANGES.txt
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
ql/src/test/queries/clientpositive/sample8.q
ql/src/test/results/clientpositive/sample8.q.out
Author: zshao
Date: Tue Dec 16 15:16:30 2008
New Revision: 727211
URL: http://svn.apache.org/viewvc?rev=727211&view=rev
Log:
HIVE-158. Make table aliases work for sampled tables in joins. (Raghotham Murthy via zshao)
Added:
hadoop/hive/trunk/ql/src/test/queries/clientpositive/sample8.q
hadoop/hive/trunk/ql/src/test/results/clientpositive/sample8.q.out
Modified:
hadoop/hive/trunk/CHANGES.txt
hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
Modified: hadoop/hive/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/CHANGES.txt?rev=727211&r1=727210&r2=727211&view=diff
==============================================================================
--- hadoop/hive/trunk/CHANGES.txt (original)
+++ hadoop/hive/trunk/CHANGES.txt Tue Dec 16 15:16:30 2008
@@ -43,6 +43,9 @@
BUG FIXES
+ HIVE-158. Make table aliases work for sampled tables in joins.
+ (Raghotham Murthy via zshao)
+
HIVE-168. Fixed join on a subquery with a group by. (Namit Jain via zshao)
HIVE-169. Fixed configuration parameter used for determining join interval
Modified: hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java?rev=727211&r1=727210&r2=727211&view=diff
==============================================================================
--- hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java (original)
+++ hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java Tue Dec 16 15:16:30 2008
@@ -2384,7 +2384,7 @@
|| (left.getToken().getType() == HiveParser.TOK_SUBQUERY)) {
String table_name = unescapeIdentifier(left.getChild(0).getText());
String alias = left.getChildCount() == 1 ? table_name :
- unescapeIdentifier(left.getChild(1).getText().toLowerCase());
+ unescapeIdentifier(left.getChild(left.getChildCount()-1).getText().toLowerCase());
joinTree.setLeftAlias(alias);
String[] leftAliases = new String[1];
leftAliases[0] = alias;
@@ -2409,7 +2409,7 @@
|| (right.getToken().getType() == HiveParser.TOK_SUBQUERY)) {
String table_name = unescapeIdentifier(right.getChild(0).getText());
String alias = right.getChildCount() == 1 ? table_name :
- unescapeIdentifier(right.getChild(1).getText().toLowerCase());
+ unescapeIdentifier(right.getChild(right.getChildCount()-1).getText().toLowerCase());
String[] rightAliases = new String[1];
rightAliases[0] = alias;
joinTree.setRightAliases(rightAliases);
Added: hadoop/hive/trunk/ql/src/test/queries/clientpositive/sample8.q
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/ql/src/test/queries/clientpositive/sample8.q?rev=727211&view=auto
==============================================================================
--- hadoop/hive/trunk/ql/src/test/queries/clientpositive/sample8.q (added)
+++ hadoop/hive/trunk/ql/src/test/queries/clientpositive/sample8.q Tue Dec 16 15:16:30 2008
@@ -0,0 +1,15 @@
+-- sampling with join and alias
+EXPLAIN EXTENDED
+SELECT s.*
+FROM srcpart TABLESAMPLE (BUCKET 1 OUT OF 1 ON key) s
+JOIN srcpart TABLESAMPLE (BUCKET 1 OUT OF 10 ON key) t
+WHERE t.key = s.key and t.value = s.value and s.ds='2008-04-08' and s.hr='11' and s.ds='2008-04-08' and s.hr='11'
+DISTRIBUTE BY key, value
+SORT BY key, value;
+
+SELECT s.key, s.value
+FROM srcpart TABLESAMPLE (BUCKET 1 OUT OF 1 ON key) s
+JOIN srcpart TABLESAMPLE (BUCKET 1 OUT OF 10 ON key) t
+WHERE s.ds='2008-04-08' and s.hr='11' and s.ds='2008-04-08' and s.hr='11'
+DISTRIBUTE BY key, value
+SORT BY key, value;