[
https://issues.apache.org/jira/browse/YARN-2229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14059430#comment-14059430
]
Jian He commented on YARN-2229:
-------------------------------
Thanks for working on this ! some comments:
- setId(long id); rename setContainerId too? given it’s still marked as
unstable.
- change the epoch type to long as well ? given the proto is also int64.
{code}
this.containerIdCounter = new AtomicLong((long) epoch << EPOCH_BIT_SHIFT);
{code}
- The semantics is changed because of this ? earlier it was checking the
container id integer, now it’s checking applicationAttemptId also
{code}
- return o2.getId().getId() - o1.getId().getId();
+ return o2.getId().compareTo(o1.getId());
{code}
> ContainerId can overflow with RM restart
> ----------------------------------------
>
> Key: YARN-2229
> URL: https://issues.apache.org/jira/browse/YARN-2229
> Project: Hadoop YARN
> Issue Type: Sub-task
> Components: resourcemanager
> Reporter: Tsuyoshi OZAWA
> Assignee: Tsuyoshi OZAWA
> Attachments: YARN-2229.1.patch, YARN-2229.2.patch, YARN-2229.2.patch,
> YARN-2229.3.patch, YARN-2229.4.patch, YARN-2229.5.patch, YARN-2229.6.patch,
> YARN-2229.7.patch
>
>
> On YARN-2052, we changed containerId format: upper 10 bits are for epoch,
> lower 22 bits are for sequence number of Ids. This is for preserving
> semantics of {{ContainerId#getId()}}, {{ContainerId#toString()}},
> {{ContainerId#compareTo()}}, {{ContainerId#equals}}, and
> {{ConverterUtils#toContainerId}}. One concern is epoch can overflow after RM
> restarts 1024 times.
> To avoid the problem, its better to make containerId long. We need to define
> the new format of container Id with preserving backward compatibility on this
> JIRA.
--
This message was sent by Atlassian JIRA
(v6.2#6252)