[
https://issues.apache.org/jira/browse/HDFS-6268?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14065725#comment-14065725
]
Andrew Wang commented on HDFS-6268:
-----------------------------------
Hi Ashwin,
I think it's okay to make it fully random, but there might be a throughput hit.
The intuition behind the fixed seed was to try and hit the same DN for good
page cache effects. Note that the ordering was entirely deterministic before,
so I don't think the behavior you're seeing is a regression. The DFSClient
should also be failing over to some other replica after a timeout, so I'm
surprised your containers are getting stuck.
Anyway, if you want to add a new config to not use a seed (default false), I'd
be happy to review.
> Better sorting in NetworkTopology#pseudoSortByDistance when no local node is
> found
> ----------------------------------------------------------------------------------
>
> Key: HDFS-6268
> URL: https://issues.apache.org/jira/browse/HDFS-6268
> Project: Hadoop HDFS
> Issue Type: Improvement
> Affects Versions: 2.4.0
> Reporter: Andrew Wang
> Assignee: Andrew Wang
> Priority: Minor
> Fix For: 3.0.0
>
> Attachments: hdfs-6268-1.patch, hdfs-6268-2.patch, hdfs-6268-3.patch,
> hdfs-6268-4.patch, hdfs-6268-5.patch, hdfs-6268-branch-2.001.patch
>
>
> In NetworkTopology#pseudoSortByDistance, if no local node is found, it will
> always place the first rack local node in the list in front.
> This became an issue when a dataset was loaded from a single datanode. This
> datanode ended up being the first replica for all the blocks in the dataset.
> When running an Impala query, the non-local reads when reading past a block
> boundary were all hitting this node, meaning massive load skew.
--
This message was sent by Atlassian JIRA
(v6.2#6252)