You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Wei-Chiu Chuang (Jira)" <ji...@apache.org> on 2019/10/02 01:00:59 UTC
[jira] [Updated] (HADOOP-16161)
NetworkTopology#getWeightUsingNetworkLocation return unexpected result
[ https://issues.apache.org/jira/browse/HADOOP-16161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wei-Chiu Chuang updated HADOOP-16161:
-------------------------------------
Fix Version/s: 3.2.2
3.1.4
> NetworkTopology#getWeightUsingNetworkLocation return unexpected result
> ----------------------------------------------------------------------
>
> Key: HADOOP-16161
> URL: https://issues.apache.org/jira/browse/HADOOP-16161
> Project: Hadoop Common
> Issue Type: Bug
> Components: net
> Reporter: Xiaoqiao He
> Assignee: Xiaoqiao He
> Priority: Major
> Fix For: 3.3.0, 3.1.4, 3.2.2
>
> Attachments: HADOOP-16161.001.patch, HADOOP-16161.002.patch, HADOOP-16161.003.patch, HADOOP-16161.004.patch, HADOOP-16161.005.patch, HADOOP-16161.006.patch, HADOOP-16161.007.patch, HADOOP-16161.008.patch, HADOOP-16161.009.patch
>
>
> Consider the following scenario:
> 1. there are 4 slaves and topology like:
> Rack: /IDC/RACK1
> hostname1
> hostname2
> Rack: /IDC/RACK2
> hostname3
> hostname4
> 2. Reader from hostname1, and calculate weight between reader and [hostname1, hostname3, hostname4] by #getWeight, and their corresponding values are [0,4,4]
> 3. Reader from client which is not in the topology, and in the same IDC but in none rack of the topology, and calculate weight between reader and [hostname1, hostname3, hostname4] by #getWeightUsingNetworkLocation, and their corresponding values are [2,2,2]
> 4. Other different Reader can get the similar results.
> The weight result for case #3 is obviously not the expected value, the truth is [4,4,4]. this issue may cause reader not really following arrange: local -> local rack -> remote rack.
> After dig the detailed implement, the root cause is #getWeightUsingNetworkLocation only calculate distance between Racks rather than hosts.
> I think we should add constant 2 to correct the weight of #getWeightUsingNetworkLocation.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org