[
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)