You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-dev@hadoop.apache.org by "Varun Saxena (JIRA)" <ji...@apache.org> on 2016/11/21 21:49:58 UTC
[jira] [Created] (YARN-5921) Incorrect synchronization in
RMContextImpl#setHAServiceState/getHAServiceState
Varun Saxena created YARN-5921:
----------------------------------
Summary: Incorrect synchronization in RMContextImpl#setHAServiceState/getHAServiceState
Key: YARN-5921
URL: https://issues.apache.org/jira/browse/YARN-5921
Project: Hadoop YARN
Issue Type: Bug
Reporter: Varun Saxena
Assignee: Varun Saxena
Code in RMContextImpl is as under:
{code:title=RMContextImpl.java|borderStyle=solid}
void setHAServiceState(HAServiceState haServiceState) {
synchronized (haServiceState) {
this.haServiceState = haServiceState;
}
}
public HAServiceState getHAServiceState() {
synchronized (haServiceState) {
return haServiceState;
}
}
{code}
As can be seen above, in setHAServiceState, we are synchronizing on the passed haServiceState instead of haServiceState in RMContextImpl which will not lead to desired effect. This does not seem to be intentional.
We can use a RW lock or synchronize on some object here.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-dev-help@hadoop.apache.org