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

Wei-Chiu Chuang edited comment on HDFS-12725 at 10/30/17 9:23 PM:
------------------------------------------------------------------

Hi [~xiaochen] thanks for filing the jira and posting a patch.

It might make the code more readable if you can refactor the catch block into a 
separate method, since that catch block is pretty long.

A little nit in the debug message:
{code}
LOG.debug("Best effort placement failed.");
{code}
It might also be useful to log numResultsOflastChoose and totalReplicaExpected.

One question regarding the test code:

{code}
    for (int i = 0; i <= numSingleDnRacks; i++) {
       racks[i] = "/rack" + i;
     }
    for (int i = numSingleDnRacks + 1; i < numDatanodes; i++) {
        racks[i] = "/rack" + (numSingleDnRacks + (i % (
            numRacks - numSingleDnRacks)));
     }
{code}
Can you explain why the first loop is between 0 <= i  <= numSingleDnRacks? Why 
isn't it between 0 <= i  <numSingleDnRacks?


was (Author: jojochuang):
Hi [~xiaochen] thanks for filing the jira and posting a patch.

A little nit in the debug message:
{code}
LOG.debug("Best effort placement failed.");
{code}
It might also be useful to log numResultsOflastChoose and totalReplicaExpected.

One question regarding the test code:

{code}
    for (int i = 0; i <= numSingleDnRacks; i++) {
       racks[i] = "/rack" + i;
     }
    for (int i = numSingleDnRacks + 1; i < numDatanodes; i++) {
        racks[i] = "/rack" + (numSingleDnRacks + (i % (
            numRacks - numSingleDnRacks)));
     }
{code}
Can you explain why the first loop is between 0 <= i  <= numSingleDnRacks? Why 
isn't it between 0 <= i  <numSingleDnRacks?

> BlockPlacementPolicyRackFaultTolerant still fails with racks with very few 
> nodes
> --------------------------------------------------------------------------------
>
>                 Key: HDFS-12725
>                 URL: https://issues.apache.org/jira/browse/HDFS-12725
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: erasure-coding
>    Affects Versions: 3.0.0
>            Reporter: Xiao Chen
>            Assignee: Xiao Chen
>              Labels: hdfs-ec-3.0-must-do
>         Attachments: HDFS-12725.01.patch, HDFS-12725.02.patch
>
>
> HDFS-12567 tries to fix the scenario where EC blocks may not be allocated in 
> extremely rack-imbalanced cluster.
> The added fall-back step of the fix could be improved to do a best-effort 
> placement. This is more likely to happen in testing than in real clusters.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
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