PHOENIX-2611 current_date/time functions produce invalid values
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/3661d984 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/3661d984 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/3661d984 Branch: refs/heads/4.x-HBase-1.0 Commit: 3661d9841d11824fcc27704b11e29393d03beddf Parents: bab2609 Author: James Taylor <[email protected]> Authored: Tue Jan 19 20:25:55 2016 -0800 Committer: James Taylor <[email protected]> Committed: Tue Jan 19 20:48:27 2016 -0800 ---------------------------------------------------------------------- .../it/java/org/apache/phoenix/end2end/DateTimeIT.java | 10 ++++++++++ .../src/main/java/org/apache/phoenix/schema/TableRef.java | 3 +-- 2 files changed, 11 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/phoenix/blob/3661d984/phoenix-core/src/it/java/org/apache/phoenix/end2end/DateTimeIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DateTimeIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DateTimeIT.java index 0fce403..6c53f1d 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/DateTimeIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/DateTimeIT.java @@ -52,6 +52,7 @@ import java.util.Calendar; import java.util.GregorianCalendar; import org.apache.phoenix.util.DateUtil; +import org.apache.phoenix.util.TestUtil; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -664,4 +665,13 @@ public class DateTimeIT extends BaseHBaseManagedTimeIT { assertNull(rs.getDate(1, GregorianCalendar.getInstance())); assertFalse(rs.next()); } + + @Test + public void testCurrentDateWithNoTable() throws Exception { + long expectedTime = System.currentTimeMillis(); + ResultSet rs = conn.createStatement().executeQuery("SELECT CURRENT_DATE()"); + assertTrue(rs.next()); + long actualTime = rs.getDate(1).getTime(); + assertTrue(Math.abs(actualTime - expectedTime) < TestUtil.MILLIS_IN_DAY); + } } http://git-wip-us.apache.org/repos/asf/phoenix/blob/3661d984/phoenix-core/src/main/java/org/apache/phoenix/schema/TableRef.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/main/java/org/apache/phoenix/schema/TableRef.java b/phoenix-core/src/main/java/org/apache/phoenix/schema/TableRef.java index 8f6e271..e231342 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/schema/TableRef.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/schema/TableRef.java @@ -19,7 +19,6 @@ package org.apache.phoenix.schema; import java.util.Objects; -import org.apache.hadoop.hbase.HConstants; import org.apache.phoenix.compile.TupleProjectionCompiler; import org.apache.phoenix.query.QueryConstants; import org.apache.phoenix.util.IndexUtil; @@ -49,7 +48,7 @@ public class TableRef { } public TableRef(PTable table) { - this(null, table, HConstants.LATEST_TIMESTAMP, false); + this(null, table, QueryConstants.UNSET_TIMESTAMP, false); } public TableRef(PTable table, long upperBoundTimeStamp, long lowerBoundTimeStamp) {
