Repository: calcite Updated Branches: refs/heads/master 834ad98e7 -> 37944bb63
[CALCITE-2358] Use null literal instead of empty string as argument for timestamp_parse Druid expression * Rename function and variable name Close apache/calcite#732 Project: http://git-wip-us.apache.org/repos/asf/calcite/repo Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/37944bb6 Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/37944bb6 Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/37944bb6 Branch: refs/heads/master Commit: 37944bb638f2d3c52f884a841c2a27532e892014 Parents: 834ad98 Author: Slim <[email protected]> Authored: Fri Jun 15 08:28:32 2018 +0100 Committer: Jesus Camacho Rodriguez <[email protected]> Committed: Mon Jun 18 09:39:00 2018 -0700 ---------------------------------------------------------------------- .../java/org/apache/calcite/config/CalciteConnectionConfig.java | 4 ++-- .../org/apache/calcite/config/CalciteConnectionConfigImpl.java | 4 ++-- .../org/apache/calcite/config/CalciteConnectionProperty.java | 5 ++--- .../org/apache/calcite/adapter/druid/DruidSqlCastConverter.java | 2 +- 4 files changed, 7 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/calcite/blob/37944bb6/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfig.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfig.java b/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfig.java index ca5fdf1..b366aea 100644 --- a/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfig.java +++ b/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfig.java @@ -32,8 +32,8 @@ public interface CalciteConnectionConfig extends ConnectionConfig { boolean approximateTopN(); /** @see CalciteConnectionProperty#APPROXIMATE_DECIMAL */ boolean approximateDecimal(); - /** @see CalciteConnectionProperty#NULL_IS_EMPTY */ - boolean nullIsEmpty(); + /** @see CalciteConnectionProperty#NULL_EQUAL_TO_EMPTY */ + boolean nullEqualToEmpty(); /** @see CalciteConnectionProperty#AUTO_TEMP */ boolean autoTemp(); /** @see CalciteConnectionProperty#MATERIALIZATIONS_ENABLED */ http://git-wip-us.apache.org/repos/asf/calcite/blob/37944bb6/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfigImpl.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfigImpl.java b/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfigImpl.java index 575d7b1..bf057cb 100644 --- a/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfigImpl.java +++ b/core/src/main/java/org/apache/calcite/config/CalciteConnectionConfigImpl.java @@ -63,8 +63,8 @@ public class CalciteConnectionConfigImpl extends ConnectionConfigImpl .getBoolean(); } - @Override public boolean nullIsEmpty() { - return CalciteConnectionProperty.NULL_IS_EMPTY.wrap(properties).getBoolean(); + @Override public boolean nullEqualToEmpty() { + return CalciteConnectionProperty.NULL_EQUAL_TO_EMPTY.wrap(properties).getBoolean(); } public boolean autoTemp() { http://git-wip-us.apache.org/repos/asf/calcite/blob/37944bb6/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java b/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java index 3d765be..dea9200 100644 --- a/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java +++ b/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java @@ -48,10 +48,9 @@ public enum CalciteConnectionProperty implements ConnectionProperty { * DECIMAL types are acceptable. */ APPROXIMATE_DECIMAL("approximateDecimal", Type.BOOLEAN, false, false), - /** - * Whether to treat empty strings as null for Druid Adapter. + /** Whether to treat empty strings as null for Druid Adapter. */ - NULL_IS_EMPTY("nullIsEmpty", Type.BOOLEAN, true, false), + NULL_EQUAL_TO_EMPTY("nullEqualToEmpty", Type.BOOLEAN, true, false), /** Whether to store query results in temporary tables. */ AUTO_TEMP("autoTemp", Type.BOOLEAN, false, false), http://git-wip-us.apache.org/repos/asf/calcite/blob/37944bb6/druid/src/main/java/org/apache/calcite/adapter/druid/DruidSqlCastConverter.java ---------------------------------------------------------------------- diff --git a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidSqlCastConverter.java b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidSqlCastConverter.java index 278bd24..0ca6cc7 100644 --- a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidSqlCastConverter.java +++ b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidSqlCastConverter.java @@ -57,7 +57,7 @@ public class DruidSqlCastConverter implements DruidSqlOperatorConverter { if (SqlTypeName.CHAR_TYPES.contains(fromType) && SqlTypeName.DATETIME_TYPES.contains(toType)) { //case chars to dates return castCharToDateTime(timeZone, operandExpression, toType, - druidQuery.getConnectionConfig().nullIsEmpty() ? "" : null); + druidQuery.getConnectionConfig().nullEqualToEmpty() ? "" : null); } else if (SqlTypeName.DATETIME_TYPES.contains(fromType) && SqlTypeName.CHAR_TYPES.contains (toType)) { //case dates to chars
