[
https://issues.apache.org/jira/browse/YARN-3619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14941289#comment-14941289
]
zhihai xu commented on YARN-3619:
---------------------------------
I just attached the previous confused patch(YARN-3619.alt.patch) which I
removed for comparison. It shares both timer and timer task, which is more
complicated than YARN-3619.001.patch, So I think YARN-3619.001.patch(share
timer only) is a better approach, which is simpler and more accurately controls
the time to unregister the container metrics.
> ContainerMetrics unregisters during getMetrics and leads to
> ConcurrentModificationException
> -------------------------------------------------------------------------------------------
>
> Key: YARN-3619
> URL: https://issues.apache.org/jira/browse/YARN-3619
> Project: Hadoop YARN
> Issue Type: Bug
> Components: nodemanager
> Affects Versions: 2.7.0
> Reporter: Jason Lowe
> Assignee: zhihai xu
> Attachments: YARN-3619.000.patch, YARN-3619.001.patch,
> YARN-3619.alt.patch, test.patch
>
>
> ContainerMetrics is able to unregister itself during the getMetrics method,
> but that method can be called by MetricsSystemImpl.sampleMetrics which is
> trying to iterate the sources. This leads to a
> ConcurrentModificationException log like this:
> {noformat}
> 2015-05-11 14:00:20,360 [Timer for 'NodeManager' metrics system] WARN
> impl.MetricsSystemImpl: java.util.ConcurrentModificationException
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)