You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Omkar Vinit Joshi (JIRA)" <ji...@apache.org> on 2013/04/11 19:39:16 UTC

[jira] [Commented] (YARN-547) New resource localization is tried even when Localized Resource is in DOWNLOADING state

    [ https://issues.apache.org/jira/browse/YARN-547?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13629147#comment-13629147 ] 

Omkar Vinit Joshi commented on YARN-547:
----------------------------------------

There are couple of invalid transition for LocalizedResource now. Updating them as a part of this patch
* From INIT state
** From INIT to INIT on RELEASE event. This is not possible now as new resource is created in INIT state on REQUEST event and immediately moved to DOWNLOADING state. With the [yarn-539|https://issues.apache.org/jira/browse/YARN-539] fix now the resource will never ever move back from LOCALIZED or DOWNLOADING state to INIT state.
** From INIT to LOCALIZED on LOCALIZED event. This too is impossible to occur now.
* From DOWNLOADING state
** From DOWNLOADING to DOWNLOADING on REQUEST event. Updating the transition. Earlier it was starting one more localization. Now just adding the requesting container to the LocalizedResource container list.
* From LOCALIZED state
** Resource will never get LOCALIZED event in LOCALIZED state. removing it. Earlier this was possible as there were multiple downloads for the same resource. Now this is not possible.
                
> New resource localization is tried even when Localized Resource is in DOWNLOADING state
> ---------------------------------------------------------------------------------------
>
>                 Key: YARN-547
>                 URL: https://issues.apache.org/jira/browse/YARN-547
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Omkar Vinit Joshi
>            Assignee: Omkar Vinit Joshi
>
> At present when multiple containers try to request a localized resource 
> 1) If the resource is not present then first it is created and Resource Localization starts ( LocalizedResource is in DOWNLOADING state)
> 2) Now if in this state multiple ResourceRequestEvents come in then ResourceLocalizationEvents are fired for all of them.
> Most of the times it is not resulting into a duplicate resource download but there is a race condition present there. 
> Location : ResourceLocalizationService.addResource .. addition of the request into "attempts" in case of an event already exists.
> The root cause for this is the presence of FetchResourceTransition on receiving ResourceRequestEvent in DOWNLOADING state.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira