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: [email protected]
For additional commands, e-mail: [email protected]