You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by me...@apache.org on 2015/06/27 11:00:54 UTC

drill git commit: DRILL-3378: Don't invoke ensureType() while rewriting aggregate expressions part of the window frame. ensureType() currently is not aware of the precedence of data types and may inject a downward cast, causing wrong results. Bump Calcit

Repository: drill
Updated Branches:
  refs/heads/master 53d09a0b9 -> 8d7458958


DRILL-3378: Don't invoke ensureType() while rewriting aggregate expressions part of the window frame.
ensureType() currently is not aware of the precedence of data types and may inject a downward cast, causing wrong results.
Bump Calcite version to r11


Project: http://git-wip-us.apache.org/repos/asf/drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/8d745895
Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/8d745895
Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/8d745895

Branch: refs/heads/master
Commit: 8d7458958c92369b5d40145d621ed50e3b8de1a4
Parents: 53d09a0
Author: Mehant Baid <me...@gmail.com>
Authored: Fri Jun 26 18:04:47 2015 -0700
Committer: Mehant Baid <me...@gmail.com>
Committed: Sat Jun 27 01:22:29 2015 -0700

----------------------------------------------------------------------
 .../drill/exec/planner/sql/DrillAvgVarianceConvertlet.java  | 5 +----
 .../java/org/apache/drill/exec/TestWindowFunctions.java     | 9 +++++++++
 pom.xml                                                     | 2 +-
 3 files changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/drill/blob/8d745895/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillAvgVarianceConvertlet.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillAvgVarianceConvertlet.java b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillAvgVarianceConvertlet.java
index 4c0618d..046b5ab 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillAvgVarianceConvertlet.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillAvgVarianceConvertlet.java
@@ -69,10 +69,7 @@ public class DrillAvgVarianceConvertlet implements SqlRexConvertlet {
       default:
         throw Util.unexpected(subtype);
     }
-    RelDataType type =
-        cx.getValidator().getValidatedNodeType(call);
-    RexNode rex = cx.convertExpression(expr);
-    return cx.getRexBuilder().ensureType(type, rex, true);
+    return cx.convertExpression(expr);
   }
 
   private SqlNode expandAvg(

http://git-wip-us.apache.org/repos/asf/drill/blob/8d745895/exec/java-exec/src/test/java/org/apache/drill/exec/TestWindowFunctions.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/test/java/org/apache/drill/exec/TestWindowFunctions.java b/exec/java-exec/src/test/java/org/apache/drill/exec/TestWindowFunctions.java
index 680f35b..66148f3 100644
--- a/exec/java-exec/src/test/java/org/apache/drill/exec/TestWindowFunctions.java
+++ b/exec/java-exec/src/test/java/org/apache/drill/exec/TestWindowFunctions.java
@@ -316,6 +316,15 @@ public class TestWindowFunctions extends BaseTestQuery {
         .baselineValues(2147483649l)
         .go();
 
+    final String avgQuery = "select avg(cast(col_int as int)) over (partition by col_varchar) as col1 " +
+        "from cp.`jsoninput/large_int.json` limit 1";
+
+    testBuilder()
+        .sqlQuery(avgQuery)
+        .unOrdered()
+        .baselineColumns("col1")
+        .baselineValues(1.0737418245E9d)
+        .go();
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/drill/blob/8d745895/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 9f61247..772192b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1226,7 +1226,7 @@
           <dependency>
             <groupId>org.apache.calcite</groupId>
             <artifactId>calcite-core</artifactId>
-            <version>1.1.0-drill-r9</version>
+            <version>1.1.0-drill-r11</version>
             <exclusions>
               <exclusion>
                 <groupId>org.jgrapht</groupId>