You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by am...@apache.org on 2015/04/21 19:14:32 UTC
drill git commit: DRILL-2827: Allow implicit cast from string to
boolean for 'true'/'false' literals.
Repository: drill
Updated Branches:
refs/heads/master be8d95393 -> a0a1930c4
DRILL-2827: Allow implicit cast from string to boolean for 'true'/'false' literals.
Project: http://git-wip-us.apache.org/repos/asf/drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/a0a1930c
Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/a0a1930c
Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/a0a1930c
Branch: refs/heads/master
Commit: a0a1930c462e20f4afdc3c741435f3b6e6e6aa59
Parents: be8d953
Author: Aman Sinha <as...@maprtech.com>
Authored: Sun Apr 19 01:21:38 2015 -0700
Committer: Aman Sinha <as...@maprtech.com>
Committed: Tue Apr 21 02:40:28 2015 -0700
----------------------------------------------------------------------
.../apache/drill/exec/resolver/TypeCastRules.java | 5 +++++
.../drill/exec/fn/impl/TestCastFunctions.java | 17 +++++++++++++++++
2 files changed, 22 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/drill/blob/a0a1930c/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/TypeCastRules.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/TypeCastRules.java b/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/TypeCastRules.java
index 92302e0..ef4bff3 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/TypeCastRules.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/TypeCastRules.java
@@ -547,6 +547,11 @@ public class TypeCastRules {
rule = new HashSet<MinorType>();
rule.add(MinorType.TINYINT);
rule.add(MinorType.BIT);
+ rule.add(MinorType.FIXEDCHAR);
+ rule.add(MinorType.FIXED16CHAR);
+ rule.add(MinorType.VARCHAR);
+ rule.add(MinorType.VAR16CHAR);
+ rule.add(MinorType.VARBINARY);
rules.put(MinorType.BIT, rule);
/** FIXEDCHAR cast able from **/
http://git-wip-us.apache.org/repos/asf/drill/blob/a0a1930c/exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestCastFunctions.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestCastFunctions.java b/exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestCastFunctions.java
index cbd9d5f..3ba8743 100644
--- a/exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestCastFunctions.java
+++ b/exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestCastFunctions.java
@@ -19,6 +19,7 @@ package org.apache.drill.exec.fn.impl;
import org.apache.drill.BaseTestQuery;
+import org.apache.drill.common.util.FileUtils;
import org.junit.Test;
import java.util.Date;
@@ -35,4 +36,20 @@ public class TestCastFunctions extends BaseTestQuery {
.build().run();
}
+ @Test // DRILL-2827
+ public void testImplicitCastStringToBoolean() throws Exception {
+ String boolTable= FileUtils.getResourceAsFile("/store/json/booleanData.json").toURI().toString();
+
+ String query = String.format(
+ "(select * from dfs_test.`%s` where key = 'true' or key = 'false')", boolTable);
+
+ testBuilder()
+ .sqlQuery(query)
+ .unOrdered()
+ .baselineColumns("key")
+ .baselineValues(true)
+ .baselineValues(false)
+ .build().run();
+ }
+
}