Repository: phoenix Updated Branches: refs/heads/4.x-HBase-0.98 98785df17 -> 03d162f3e
PHOENIX-3923 TimezoneOffsetFunctionIT failing after PHOENIX-3913 Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/2d7c585d Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/2d7c585d Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/2d7c585d Branch: refs/heads/4.x-HBase-0.98 Commit: 2d7c585dd7c0b3b3003c3d9d8cca109befab9d5e Parents: 98785df Author: James Taylor <[email protected]> Authored: Thu Jun 8 11:21:00 2017 -0700 Committer: James Taylor <[email protected]> Committed: Thu Jun 8 13:23:19 2017 -0700 ---------------------------------------------------------------------- .../expression/function/TimezoneOffsetFunction.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/phoenix/blob/2d7c585d/phoenix-core/src/main/java/org/apache/phoenix/expression/function/TimezoneOffsetFunction.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/main/java/org/apache/phoenix/expression/function/TimezoneOffsetFunction.java b/phoenix-core/src/main/java/org/apache/phoenix/expression/function/TimezoneOffsetFunction.java index 8c70346..c61f838 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/expression/function/TimezoneOffsetFunction.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/expression/function/TimezoneOffsetFunction.java @@ -20,15 +20,16 @@ package org.apache.phoenix.expression.function; import java.sql.SQLException; import java.util.List; + import org.apache.hadoop.hbase.io.ImmutableBytesWritable; import org.apache.phoenix.cache.JodaTimezoneCache; import org.apache.phoenix.expression.Expression; import org.apache.phoenix.parse.FunctionParseNode; +import org.apache.phoenix.schema.tuple.Tuple; +import org.apache.phoenix.schema.types.PDataType; import org.apache.phoenix.schema.types.PDate; import org.apache.phoenix.schema.types.PInteger; -import org.apache.phoenix.schema.types.PDataType; import org.apache.phoenix.schema.types.PVarchar; -import org.apache.phoenix.schema.tuple.Tuple; import org.joda.time.DateTimeZone; /** @@ -59,11 +60,17 @@ public class TimezoneOffsetFunction extends ScalarFunction { if (!children.get(0).evaluate(tuple, ptr)) { return false; } + if (ptr.getLength() == 0) { + return true; + } DateTimeZone timezoneInstance = JodaTimezoneCache.getInstance(ptr); if (!children.get(1).evaluate(tuple, ptr)) { return false; } + if (ptr.getLength() == 0) { + return true; + } long date = PDate.INSTANCE.getCodec().decodeLong(ptr, children.get(1).getSortOrder()); int offset = timezoneInstance.getOffset(date);
