[ 
https://issues.apache.org/jira/browse/YARN-6074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Varun Saxena updated YARN-6074:
-------------------------------
    Fix Version/s: 2.9.0

> FlowRunEntity does not deserialize long values correctly
> --------------------------------------------------------
>
>                 Key: YARN-6074
>                 URL: https://issues.apache.org/jira/browse/YARN-6074
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: timelinereader
>            Reporter: Rohith Sharma K S
>            Assignee: Rohith Sharma K S
>             Fix For: 2.9.0, 3.0.0-alpha2, YARN-5355, YARN-5355-branch-2
>
>         Attachments: YARN-6074.patch
>
>
> I see that FlowRunEntity methods *getRunId()* and *getMaxEndTime()* does not 
> deserialize in efficient way which causes class cast exception based on the 
> number.
> {code}
>   public long getRunId() {
>     Object runId = getInfo().get(FLOW_RUN_ID_INFO_KEY);
>     return runId == null ? 0L : (Long) runId;
>   }
> {code} 
> and 
> {code}
>   public long getMaxEndTime() {
>     Object time = getInfo().get(FLOW_RUN_END_TIME);
>     return time == null ? 0L : (Long)time;
>   }
> {code} 
> The reason for class caste exception is Json has data type Number which 
> includes all java primitive types. So, if number with in the range of Integer 
> max, then Object is converted to Integer which fails  to type cast to Long. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to