Daniel Templeton commented on YARN-3141:

OK, I got a chance. :)

Looks like in {{FSAppAttempt.updateInternal()}} you dropped the lock instead of 
downgrading it before the log.  I'm not sure that's safe since 
{{appSchedulingInfo}} and {{reservedContainers}} aren't thread safe.

In {{FSAppAttempt.resetAllowedLocalityLevel()}}, this:

      old = allowedLocalityLevel.get(schedulerKey);
      allowedLocalityLevel.put(schedulerKey, level);

can be this:

      old = allowedLocalityLevel.put(schedulerKey, level);

> Improve locks in SchedulerApplicationAttempt/FSAppAttempt/FiCaSchedulerApp
> --------------------------------------------------------------------------
>                 Key: YARN-3141
>                 URL: https://issues.apache.org/jira/browse/YARN-3141
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: resourcemanager, scheduler
>            Reporter: Wangda Tan
>            Assignee: Wangda Tan
>         Attachments: YARN-3141.1.patch, YARN-3141.2.patch, YARN-3141.3.patch, 
> YARN-3141.4.patch
> Enhance locks in SchedulerApplicationAttempt/FSAppAttempt/FiCaSchedulerApp, 
> as mentioned in YARN-3091, a possible solution is using read/write lock. 
> Other fine-graind locks for specific purposes / bugs should be addressed in 
> separated tickets.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to