[ 
https://issues.apache.org/jira/browse/PHOENIX-2845?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15267302#comment-15267302
 ] 

Julian Hyde commented on PHOENIX-2845:
--------------------------------------

The TIMESTAMP type has a scale. The default scale differs among databases. I 
don't know what is Phoenix's default scale.

Let's suppose the default scale is 9, then {{CREATE TABLE( ... ,  t 
TIMESTAMP)}} is equivalent to {{CREATE TABLE( ... , t TIMESTAMP(9))}}. Clearly 
we should carry the nanos into the database.

Now let's suppose default scale is 3 (or any value less than 9). We we would 
need to round the value when inserting. I don't know whether the SQL standard 
says you are allowed to silently round timestamp values. It is probably similar 
behavior to whether it silently rounds, say, decimal values.

> Timestamp ignores nanos in literal expressions
> ----------------------------------------------
>
>                 Key: PHOENIX-2845
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2845
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.7.0
>            Reporter: Sergey Soldatov
>            Assignee: Sergey Soldatov
>         Attachments: PHOENIX-2845-1.patch, PHOENIX-2845-2.patch
>
>
> Phoenix strips nanos in Timestamp. Simple test case:
> {noformat}
> create table x (id bigint primary key, t timestamp);
> upsert into x values (1, TIMESTAMP'2015-01-01 00:00:00.123456');
> upsert into x values (2, TIMESTAMP'2015-01-01 00:00:00.123457');
> upsert into x values (3, TIMESTAMP'2015-01-01 00:00:00.123999');
> {noformat}
> HBase scan:
> {noformat}
> hbase(main):007:0> scan 'X'
> ROW COLUMN+CELL
>  \x80\x00\x00\x00\x00\x00\x00\x01 column=0:T, timestamp=1460646668779, 
> value=\x80\x00\x01J\xA2\xCA\xB0{\x00\x00\x00\x00
>  \x80\x00\x00\x00\x00\x00\x00\x02 column=0:T, timestamp=1460646673369, 
> value=\x80\x00\x01J\xA2\xCA\xB0{\x00\x00\x00\x00
>  \x80\x00\x00\x00\x00\x00\x00\x03 column=0:T, timestamp=1460646680294, 
> value=\x80\x00\x01J\xA2\xCA\xB0{\x00\x00\x00\x00
> {noformat} 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to