[ https://issues.apache.org/jira/browse/HDFS-6648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Inigo Goiri updated HDFS-6648: ------------------------------ Attachment: HDFS-6648-001.patch Reuploading for jenkins. > Order of namenodes in ConfiguredFailoverProxyProvider is not defined by order > in hdfs-site.xml > ---------------------------------------------------------------------------------------------- > > Key: HDFS-6648 > URL: https://issues.apache.org/jira/browse/HDFS-6648 > Project: Hadoop HDFS > Issue Type: Bug > Components: ha, hdfs-client > Affects Versions: 2.7.0 > Reporter: Rafal Wojdyla > Attachments: HDFS-6648-000.patch, HDFS-6648-001.patch > > > In org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider, > in the constructor, there's a map <nameservice : < service-id : > service-rpc-address > > (DFSUtil.getHaNnRpcAddresses). It's a LinkedHashMap > of HashMaps. The order is kept for _nameservices_. Then to find active > namenode, for nameservice, we get HashMap of <service-id : > service-rpc-address > for requested nameservice (taken from URI request), And > for this HashMap we get values - order of this collection is not strictly > defined! In the code: > {code} > Collection<InetSocketAddress> addressesOfNns = addressesInNN.values(); > {code} > And then we put these values (in not defined order) into ArrayList of > proxies, and then in getProxy we start from first proxy in the list and > failover to next if needed. > It would make sense for ConfiguredFailoverProxyProvider to keep order of > proxies/namenodes defined in hdfs-site.xml. -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org