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

Haibo Chen updated YARN-7373:
-----------------------------
    Description: 
While reviewing YARN-4511, Miklos noticed that  
{code:java}
342         // notify schedulerNode of the update to correct resource accounting
343         node.containerUpdated(existingRMContainer, existingContainer);
344     
345         
((RMContainerImpl)tempRMContainer).setContainer(updatedTempContainer);
346         // notify SchedulerNode of the update to correct resource accounting
347         node.containerUpdated(tempRMContainer, tempContainer);
348     
{code}
bq. I think that it would be nicer to lock around these two calls to become 
atomic.

Container update, and thus container swap as part of that, is atomic according 
to [~asuresh].
It'd be nice to discuss this in more details to see if we want to be more 
conservative.

  was:
While reviewing YARN-4511, Miklos pointed out that  
{code:java}
342         // notify schedulerNode of the update to correct resource accounting
343         node.containerUpdated(existingRMContainer, existingContainer);
344     
345         
((RMContainerImpl)tempRMContainer).setContainer(updatedTempContainer);
346         // notify SchedulerNode of the update to correct resource accounting
347         node.containerUpdated(tempRMContainer, tempContainer);
348     
{code}
bq. I think that it would be nicer to lock around these two calls to become 
atomic.


> The atomicity of container update in RM is not clear
> ----------------------------------------------------
>
>                 Key: YARN-7373
>                 URL: https://issues.apache.org/jira/browse/YARN-7373
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: resourcemanager
>            Reporter: Haibo Chen
>            Assignee: Haibo Chen
>
> While reviewing YARN-4511, Miklos noticed that  
> {code:java}
> 342       // notify schedulerNode of the update to correct resource accounting
> 343       node.containerUpdated(existingRMContainer, existingContainer);
> 344   
> 345       
> ((RMContainerImpl)tempRMContainer).setContainer(updatedTempContainer);
> 346       // notify SchedulerNode of the update to correct resource accounting
> 347       node.containerUpdated(tempRMContainer, tempContainer);
> 348   
> {code}
> bq. I think that it would be nicer to lock around these two calls to become 
> atomic.
> Container update, and thus container swap as part of that, is atomic 
> according to [~asuresh].
> It'd be nice to discuss this in more details to see if we want to be more 
> conservative.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to