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

ASF GitHub Bot commented on HDFS-16831:
---------------------------------------

ZanderXu opened a new pull request, #5098:
URL: https://github.com/apache/hadoop/pull/5098

   ### Description of PR
   [HDFS-16831](https://issues.apache.org/jira/browse/HDFS-16831)
   
   The method `getNamenodesForNameserviceId` in 
`MembershipNamenodeResolver.class` should shuffle Observer NameNodes every 
time. The current logic will return the cached list and will caused all of read 
requests are forwarding to the first observer namenode. 
   
   The related code as bellow:
   ```
   @Override
   public List<? extends FederationNamenodeContext> 
getNamenodesForNameserviceId(
       final String nsId, boolean listObserversFirst) throws IOException {
     List<? extends FederationNamenodeContext> ret = cacheNS.get(Pair.of(nsId, 
listObserversFirst));
     if (ret != null) {
       return ret;
     } 
     ...
   }
   ```
   
   




> [RBF SBN] GetNamenodesForNameserviceId should shuffle Observer NameNodes 
> every time
> -----------------------------------------------------------------------------------
>
>                 Key: HDFS-16831
>                 URL: https://issues.apache.org/jira/browse/HDFS-16831
>             Project: Hadoop HDFS
>          Issue Type: Bug
>            Reporter: ZanderXu
>            Assignee: ZanderXu
>            Priority: Major
>
> The method getNamenodesForNameserviceId in MembershipNamenodeResolver.class 
> should shuffle Observer NameNodes every time. The current logic will return 
> the cached list and will caused all of read requests are forwarding to the 
> first observer namenode. 
>  
> The related code as bellow:
> {code:java}
> @Override
> public List<? extends FederationNamenodeContext> getNamenodesForNameserviceId(
>     final String nsId, boolean listObserversFirst) throws IOException {
>   List<? extends FederationNamenodeContext> ret = cacheNS.get(Pair.of(nsId, 
> listObserversFirst));
>   if (ret != null) {
>     return ret;
>   } 
>   ...
> }{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to