[
https://issues.apache.org/jira/browse/YARN-4416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15044307#comment-15044307
]
Sunil G commented on YARN-4416:
-------------------------------
I also agree that we need to make ordering policy independent. But a fail fast
iterator will also be pblm as we have an open loophole to change some contents
in SchedulableEntity. A discussion took place while doing priority with Jian on
same line. And we dropped the plan to have locks inside ordering policy due to
tight coupling with leafqueue. Looping [~jianhe] also to the thread.
> Deadlock due to synchronised get Methods in AbstractCSQueue
> -----------------------------------------------------------
>
> Key: YARN-4416
> URL: https://issues.apache.org/jira/browse/YARN-4416
> Project: Hadoop YARN
> Issue Type: Bug
> Components: capacity scheduler, resourcemanager
> Affects Versions: 2.7.1
> Reporter: Naganarasimha G R
> Assignee: Naganarasimha G R
> Priority: Minor
> Attachments: YARN-4416.v1.001.patch, YARN-4416.v1.002.patch,
> deadlock.log
>
>
> While debugging in eclipse came across a scenario where in i had to get to
> know the name of the queue but every time i tried to see the queue it was
> getting hung. On seeing the stack realized there was a deadlock but on
> analysis found out that it was only due to *queue.toString()* during
> debugging as {{AbstractCSQueue.getAbsoluteUsedCapacity}} was synchronized.
> Still i feel {{AbstractCSQueue}}'s getter methods need not be synchronized
> and better be handled through read and write locks.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)