You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by fr...@apache.org on 2018/06/14 23:03:39 UTC

[5/7] calcite-avatica git commit: [CALCITE-2299] Add support for NANOSECOND in TimeUnit and TimeUnitRange (Sergey Nuyanzin)

[CALCITE-2299] Add support for NANOSECOND in TimeUnit and TimeUnitRange (Sergey Nuyanzin)

Close apache/calcite-avatica#58

Signed-off-by: Kevin Risden <kr...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/calcite-avatica/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite-avatica/commit/9a378452
Tree: http://git-wip-us.apache.org/repos/asf/calcite-avatica/tree/9a378452
Diff: http://git-wip-us.apache.org/repos/asf/calcite-avatica/diff/9a378452

Branch: refs/heads/branch-avatica-1.12
Commit: 9a37845290e708136b098026bd8b121ea86dc5a5
Parents: 732e7d7
Author: snuyanzin <sn...@gmail.com>
Authored: Thu Jun 14 16:48:47 2018 +0300
Committer: Kevin Risden <kr...@apache.org>
Committed: Thu Jun 14 11:14:59 2018 -0500

----------------------------------------------------------------------
 .../main/java/org/apache/calcite/avatica/util/TimeUnit.java | 9 ++++++---
 .../java/org/apache/calcite/avatica/util/TimeUnitRange.java | 1 +
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/calcite-avatica/blob/9a378452/core/src/main/java/org/apache/calcite/avatica/util/TimeUnit.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/calcite/avatica/util/TimeUnit.java b/core/src/main/java/org/apache/calcite/avatica/util/TimeUnit.java
index 4516410..b81d707 100644
--- a/core/src/main/java/org/apache/calcite/avatica/util/TimeUnit.java
+++ b/core/src/main/java/org/apache/calcite/avatica/util/TimeUnit.java
@@ -27,8 +27,9 @@ import java.math.BigDecimal;
  *
  * <p>The others ({@link #QUARTER}, {@link #WEEK}, {@link #MILLISECOND},
  * {@link #DOW}, {@link #DOY}, {@link #EPOCH}, {@link #DECADE}, {@link #CENTURY},
- * {@link #MILLENNIUM}, {@link #MICROSECOND}, {@link #ISODOW} and {@link #ISOYEAR})
- * are convenient to use internally, when converting to and from UNIX timestamps.
+ * {@link #MILLENNIUM}, {@link #MICROSECOND}, {@link #NANOSECOND}, {@link #ISODOW}
+ * and {@link #ISOYEAR}) are convenient to use internally,
+ * when converting to and from UNIX timestamps.
  * And also may be arguments to the {@code EXTRACT}, {@code TIMESTAMPADD} and
  * {@code TIMESTAMPDIFF} functions.
  */
@@ -49,7 +50,9 @@ public enum TimeUnit {
       BigDecimal.valueOf(53)),
   MILLISECOND(false, '.', BigDecimal.ONE, BigDecimal.valueOf(1000)),
   MICROSECOND(false, '.', BigDecimal.ONE.scaleByPowerOfTen(-3),
-      BigDecimal.valueOf(1000000)),
+      BigDecimal.valueOf(1000_000)),
+  NANOSECOND(false, '.', BigDecimal.ONE.scaleByPowerOfTen(-6),
+      BigDecimal.valueOf(1000_000_000)),
   DOW(false, '-', null, null),
   ISODOW(false, '-', null, null),
   DOY(false, '-', null, null),

http://git-wip-us.apache.org/repos/asf/calcite-avatica/blob/9a378452/core/src/main/java/org/apache/calcite/avatica/util/TimeUnitRange.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/calcite/avatica/util/TimeUnitRange.java b/core/src/main/java/org/apache/calcite/avatica/util/TimeUnitRange.java
index 98e4fd2..8710692 100644
--- a/core/src/main/java/org/apache/calcite/avatica/util/TimeUnitRange.java
+++ b/core/src/main/java/org/apache/calcite/avatica/util/TimeUnitRange.java
@@ -44,6 +44,7 @@ public enum TimeUnitRange {
   WEEK(TimeUnit.WEEK, null),
   MILLISECOND(TimeUnit.MILLISECOND, null),
   MICROSECOND(TimeUnit.MICROSECOND, null),
+  NANOSECOND(TimeUnit.NANOSECOND, null),
   DOW(TimeUnit.DOW, null),
   ISODOW(TimeUnit.ISODOW, null),
   DOY(TimeUnit.DOY, null),