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

Chris Douglas commented on HDFS-10687:
--------------------------------------

I only skimmed the PB translation classes, assuming those are correct. Only a 
few minor questions:
* {{MembershipNamenodeResolver#getMembershipStore}} can't return a 
partially-constructed object accessed by multiple threads, because the service 
init guarantees that it only receives the instance created by the state store? 
Through {{getRegisteredRecordStores}}, this holds no locks. {{addRecordStore}} 
could include a check that the service is still in the init state and/or the 
recordStores map could be unmodifiable at the end of init.
* In {{MembershipStoreImpl}}, the {{activeRegistrations}} and 
{{expiredRegistrations}} fields are protected by a r/w lock, except in the 
heartbeat handling when it's used for logging. Do either of these need to be a 
{{ConcurrentHashMap}}?
* {{EphemeralBaseRecord}} is kind of a confusing name for that type, but I 
don't have a better suggestion...

The patch could update {{findbugsExcludeFile.xml}} to prevent it from flagging 
generated code (under dev-support).

> Federation Membership State Store internal API
> ----------------------------------------------
>
>                 Key: HDFS-10687
>                 URL: https://issues.apache.org/jira/browse/HDFS-10687
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs
>            Reporter: Inigo Goiri
>            Assignee: Jason Kace
>         Attachments: HDFS-10467-HDFS-10687-001.patch, 
> HDFS-10687-HDFS-10467-002.patch, HDFS-10687-HDFS-10467-003.patch, 
> HDFS-10687-HDFS-10467-004.patch, HDFS-10687-HDFS-10467-005.patch, 
> HDFS-10687-HDFS-10467-006.patch
>
>
> The Federation Membership State encapsulates the information about the 
> Namenodes of each sub-cluster that are participating in Federation. The 
> information includes addresses for RPC, Web. This information is stored in 
> the State Store and later used by the Router to find data in the federation.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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

Reply via email to