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

Li Lu commented on YARN-4025:
-----------------------------

Hi [~sjlee0], thanks for the work! The patch overall LGTM. One small question: 
The way to deserializing event key, ts, and infokey appears to be a little bit 
isolated from the serialization part in the writer. Maybe it's helpful to put 
them in a centralized place? It might be a little bit confusing for the 
hardcoded 0, 1, and 2 indices, so maybe it's also helpful to mark down the 
structure of the entityid:ts:infokey structure somewhere close?

> Deal with byte representations of Longs in writer code
> ------------------------------------------------------
>
>                 Key: YARN-4025
>                 URL: https://issues.apache.org/jira/browse/YARN-4025
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: timelineserver
>            Reporter: Vrushali C
>            Assignee: Sangjin Lee
>         Attachments: YARN-4025-YARN-2928.001.patch, 
> YARN-4025-YARN-2928.002.patch
>
>
> Timestamps are being stored as Longs in hbase by the HBaseTimelineWriterImpl 
> code. There seem to be some places in the code where there are conversions 
> between Long to byte[] to String for easier argument passing between function 
> calls. Then these values end up being converted back to byte[] while storing 
> in hbase. 
> It would be better to pass around byte[] or the Longs themselves  as 
> applicable. 
> This may result in some api changes (store function) as well in adding a few 
> more function calls like getColumnQualifier which accepts a pre-encoded byte 
> array. It will be in addition to the existing api which accepts a String and 
> the ColumnHelper to return a byte[] column name instead of a String one. 
> Filing jira to track these changes.



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

Reply via email to