Repository: tajo Updated Branches: refs/heads/branch-0.11.2 a9e8cbc4f -> f4d32a950
TAJO-2107: TIMESTAMP type equalsTo() problem. Signed-off-by: Jihoon Son <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/tajo/repo Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/f4d32a95 Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/f4d32a95 Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/f4d32a95 Branch: refs/heads/branch-0.11.2 Commit: f4d32a9506b48cd9b8f4d983d5d32e2dab3642fe Parents: a9e8cbc Author: Jongyoung Park <[email protected]> Authored: Thu Mar 31 10:22:15 2016 +0900 Committer: Jihoon Son <[email protected]> Committed: Thu Mar 31 10:22:15 2016 +0900 ---------------------------------------------------------------------- .../java/org/apache/tajo/datum/TimestampDatum.java | 2 +- .../org/apache/tajo/datum/TestTimestampDatum.java | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/f4d32a95/tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java ---------------------------------------------------------------------- diff --git a/tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java b/tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java index f69e7da..ac30278 100644 --- a/tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java +++ b/tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java @@ -176,7 +176,7 @@ public class TimestampDatum extends Datum { @Override public Datum equalsTo(Datum datum) { - if (datum.type() == TajoDataTypes.Type.TIME) { + if (datum.type() == TajoDataTypes.Type.TIMESTAMP) { return timestamp == datum.asInt8() ? BooleanDatum.TRUE : BooleanDatum.FALSE; } else if (datum.isNull()) { return datum; http://git-wip-us.apache.org/repos/asf/tajo/blob/f4d32a95/tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java ---------------------------------------------------------------------- diff --git a/tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java b/tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java index dc8a881..f82f66d 100644 --- a/tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java +++ b/tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java @@ -19,6 +19,7 @@ package org.apache.tajo.datum; import org.apache.tajo.common.TajoDataTypes.Type; +import org.apache.tajo.exception.InvalidOperationException; import org.apache.tajo.exception.TajoRuntimeException; import org.apache.tajo.json.CommonGsonHelper; import org.apache.tajo.util.datetime.DateTimeUtil; @@ -199,4 +200,19 @@ public class TestTimestampDatum { assertThat(theday.compareTo(date) > 0, is(true)); } + + @Test + public void testEqualsTo() { + TimestampDatum theday = DatumFactory.createTimestamp("2014-11-12 15:00:00.68"); + + assertTrue(theday.equalsTo(theday).asBool()); + assertEquals(NullDatum.get(), theday.equalsTo(NullDatum.get())); + } + + @Test(expected = InvalidOperationException.class) + public void testEqualsToInvalidCase() { + TimestampDatum theday = DatumFactory.createTimestamp("2014-11-12 15:00:00.68"); + + theday.equalsTo(new Int4Datum(123)); + } }
