[
https://issues.apache.org/jira/browse/PHOENIX-787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14497407#comment-14497407
]
James Taylor commented on PHOENIX-787:
--------------------------------------
The issue is a subtle one and a corner case. It would occur if you have a
timestamp that stores milliseconds and nanos. For example, let's say you have
the following timestamp t:
123456788000 ms 100 ns
If you do a CEIL(t, 'SECOND'), then this would round to 123456788000, when it
should round up to 123456789000 based on the nanos component making it higher.
Make sense?
[~samarthjain], your proposed mentor, can explain more.
> CEIL function may produce incorrect results for TIMESTAMP
> ---------------------------------------------------------
>
> Key: PHOENIX-787
> URL: https://issues.apache.org/jira/browse/PHOENIX-787
> Project: Phoenix
> Issue Type: Task
> Affects Versions: 3.0-Release
> Reporter: James Taylor
> Labels: Newbie
>
> In the CEIL function, we only consider nanos when the time unit of
> MILLISECONDS is used. However, we should consider it for other time units as
> well. For example, if the time unit is SECONDS and the TIMESTAMP value
> happens to be at an exact multiple of 1000 milliseconds, then the CEIL should
> round up, as their will be nano seconds remaining and thus the TIMESTAMP
> should be rounded up to the next increment.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)