Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
3.4.0
-
Reviewed
Description
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; } ... }
Attachments
Issue Links
- is caused by
-
HDFS-13522 HDFS-13522: Add federated nameservices states to client protocol and propagate it between routers and clients.
- Resolved
- relates to
-
HDFS-13522 HDFS-13522: Add federated nameservices states to client protocol and propagate it between routers and clients.
- Resolved
- links to