[ 
https://issues.apache.org/jira/browse/YARN-5123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15297795#comment-15297795
 ] 

Lavkesh Lahngir commented on YARN-5123:
---------------------------------------

When RM becomes active, it stores a secret in the credentail table, which is 
used later to check the active status. 
In every transaction we hold a shared lock on the credential table. (see 
getFromTableForShare() method and 
http://www.postgresql.org/docs/9.1/static/transaction-iso.html repeatbale read 
transaction level). 
If current RM holds the shared lock, the other RM won't be able to modifiy the 
credentail table until the transaction is commited or aborted, and if 
credentail table is modified by other RM before the transaction has begun, that 
means second RM has become active. In that case the current RM will throw 
FenceExcaption and will go to standby. 
In both cases only one RM will be able to write on the state-store.


> SQL based RM state store
> ------------------------
>
>                 Key: YARN-5123
>                 URL: https://issues.apache.org/jira/browse/YARN-5123
>             Project: Hadoop YARN
>          Issue Type: New Feature
>    Affects Versions: 2.6.0
>            Reporter: Lavkesh Lahngir
>         Attachments: sqlstatestore.patch
>
>
> In our setup,  zookeeper based RM state store didn't work. We ended up 
> implementing our own SQL based state store. Here is a patch, if anybody else 
> wants to use it. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to