hadoop-hdfs-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kihwal Lee (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HDFS-4937) ReplicationMonitor can infinite-loop in BlockPlacementPolicyDefault#chooseRandom()
Date Tue, 25 Jun 2013 21:45:20 GMT
Kihwal Lee created HDFS-4937:

             Summary: ReplicationMonitor can infinite-loop in BlockPlacementPolicyDefault#chooseRandom()
                 Key: HDFS-4937
                 URL: https://issues.apache.org/jira/browse/HDFS-4937
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: namenode
    Affects Versions: 0.23.8, 2.0.4-alpha
            Reporter: Kihwal Lee

When a large number of nodes are removed by refreshing node lists, the network topology is
updated. If the refresh happens at the right moment, the replication monitor thread may stuck
in the while loop of {{chooseRandom()}}. This is because the old cluster size is used in the
terminal condition check of the loop. This usually happens when a block with a high replication
factor is being processed. Since replicas/rack is calculated beforehand, no node choice may
satisfy the goodness criteria if refreshing removed racks. 

All nodes will end up in the excluded list, but the size will still be less than the previously
recorded cluster size, so it will loop infinitely. This has been seen in a production environment.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message