Author: jvs
Date: Tue Nov  1 05:21:16 2011
New Revision: 1195830

URL: http://svn.apache.org/viewvc?rev=1195830&view=rev
Log:
HIVE-2536. Support scientific notation for Double literals
(Jonathan Chang via jvs)

Summary:
HIVE-2536

Of the form 1.0e10.

Test Plan: EMPTY

Reviewers: DUMMY_REVIEWER, jsichi

Reviewed By: jsichi

CC: JIRA, jonchang, jsichi

Differential Revision: 129


Added:
    hive/trunk/ql/src/test/queries/clientpositive/literal_double.q
    hive/trunk/ql/src/test/results/clientpositive/literal_double.q.out
Modified:
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g?rev=1195830&r1=1195829&r2=1195830&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g Tue Nov  1 
05:21:16 2011
@@ -2389,7 +2389,7 @@ Digit
 fragment
 Exponent
     :
-    'e' ( PLUS|MINUS )? (Digit)+
+    ('e' | 'E') ( PLUS|MINUS )? (Digit)+
     ;
 
 fragment

Added: hive/trunk/ql/src/test/queries/clientpositive/literal_double.q
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/literal_double.q?rev=1195830&view=auto
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/literal_double.q (added)
+++ hive/trunk/ql/src/test/queries/clientpositive/literal_double.q Tue Nov  1 
05:21:16 2011
@@ -0,0 +1,3 @@
+EXPLAIN SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, -3.14e-8, 3.14e+8, 
3.14E8, 3.14E-8 FROM src LIMIT 1;
+SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, -3.14e-8, 3.14e+8, 3.14E8, 
3.14E-8 FROM src LIMIT 1;
+

Added: hive/trunk/ql/src/test/results/clientpositive/literal_double.q.out
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/literal_double.q.out?rev=1195830&view=auto
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/literal_double.q.out (added)
+++ hive/trunk/ql/src/test/results/clientpositive/literal_double.q.out Tue Nov  
1 05:21:16 2011
@@ -0,0 +1,61 @@
+PREHOOK: query: EXPLAIN SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, 
-3.14e-8, 3.14e+8, 3.14E8, 3.14E-8 FROM src LIMIT 1
+PREHOOK: type: QUERY
+POSTHOOK: query: EXPLAIN SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, 
-3.14e-8, 3.14e+8, 3.14E8, 3.14E-8 FROM src LIMIT 1
+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 3.14) 
(TOK_SELEXPR (- 3.14)) (TOK_SELEXPR 3.14e8) (TOK_SELEXPR 3.14e-8) (TOK_SELEXPR 
(- 3.14e8)) (TOK_SELEXPR (- 3.14e-8)) (TOK_SELEXPR 3.14e+8) (TOK_SELEXPR 
3.14E8) (TOK_SELEXPR 3.14E-8)) (TOK_LIMIT 1)))
+
+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: 3.14
+                    type: double
+                    expr: (- 3.14)
+                    type: double
+                    expr: 3.14E8
+                    type: double
+                    expr: 3.14E-8
+                    type: double
+                    expr: (- 3.14E8)
+                    type: double
+                    expr: (- 3.14E-8)
+                    type: double
+                    expr: 3.14E8
+                    type: double
+                    expr: 3.14E8
+                    type: double
+                    expr: 3.14E-8
+                    type: double
+              outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, 
_col6, _col7, _col8
+              Limit
+                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: SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, -3.14e-8, 
3.14e+8, 3.14E8, 3.14E-8 FROM src LIMIT 1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@src
+PREHOOK: Output: 
file:/var/folders/71/h_j6fpg10r33hvx1lcxlgttcw61_4s/T/jonchang/hive_2011-10-31_11-47-48_679_6800913201570347877/-mr-10000
+POSTHOOK: query: SELECT 3.14, -3.14, 3.14e8, 3.14e-8, -3.14e8, -3.14e-8, 
3.14e+8, 3.14E8, 3.14E-8 FROM src LIMIT 1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@src
+POSTHOOK: Output: 
file:/var/folders/71/h_j6fpg10r33hvx1lcxlgttcw61_4s/T/jonchang/hive_2011-10-31_11-47-48_679_6800913201570347877/-mr-10000
+3.14   -3.14   3.14E8  3.14E-8 -3.14E8 -3.14E-8        3.14E8  3.14E8  3.14E-8


Reply via email to