[ https://issues.apache.org/jira/browse/YARN-3480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15057501#comment-15057501 ]
Jun Gong commented on YARN-3480: -------------------------------- [~jianhe] Thanks for review and suggestion. {quote} how about removing the attempts that are beyond the max-allowed-attempts instead of the ones beyond the validity interval ? this way, we can keep more reasonable amount of history. {quote} OK. In earlier patches, I did it in this way. Then max-allowed-attempts will be a global hard limit. {quote} Instead of introducing the dummyAttempt in the RMApp, we can change the caller to always find the current attempt for container by using AbstractYarnScheduler#getCurrentAttemptForContainer API. This way, the container events can be routed to the current attempts instead of old one. {quote} Current attempt might be in any state, it could not deal with some container state, e.g. when attempt is in RMAppAttemptState.NEW, it could deal with event RMAppAttemptEventType.CONTAINER_FINISHED. In order not to make attempt's state transition more complex, we introduce 'dummyAttempt', it is in final state(because it is a finished attempt), e.g. RMAppAttemptState.FAILED, and it could deal with any event RMAppAttemptEventType.*. Is it OK? > Recovery may get very slow with lots of services with lots of app-attempts > -------------------------------------------------------------------------- > > Key: YARN-3480 > URL: https://issues.apache.org/jira/browse/YARN-3480 > Project: Hadoop YARN > Issue Type: Sub-task > Components: resourcemanager > Affects Versions: 2.6.0 > Reporter: Jun Gong > Assignee: Jun Gong > Attachments: YARN-3480.01.patch, YARN-3480.02.patch, > YARN-3480.03.patch, YARN-3480.04.patch, YARN-3480.05.patch, YARN-3480.06.patch > > > When RM HA is enabled and running containers are kept across attempts, apps > are more likely to finish successfully with more retries(attempts), so it > will be better to set 'yarn.resourcemanager.am.max-attempts' larger. However > it will make RMStateStore(FileSystem/HDFS/ZK) store more attempts, and make > RM recover process much slower. It might be better to set max attempts to be > stored in RMStateStore. > BTW: When 'attemptFailuresValidityInterval'(introduced in YARN-611) is set to > a small value, retried attempts might be very large. So we need to delete > some attempts stored in RMStateStore and RMStateStore. -- This message was sent by Atlassian JIRA (v6.3.4#6332)