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

Walter Su commented on HDFS-7621:
---------------------------------

My changes to {{Dispatcher}} is smaller. The patch is big because I rename 
{{PendingMove.block}} to {{reportedBlock}}, and javadoc changes.
{{GlobalBlockMap.putIfAbsent(..)}} is almost the same as the original 
{{get(..)}}. The logic doesn't change.
Changes to {{getBlockList()}} because need to correctly calculate 
{{bytesReceived}}. The logic doesn't change.
{{DBlockStriped}} is incremental.

{{PendingMove}} is used to handle reported block as it used to be, even before 
EC branch came out. most changes are about renaming and javadoc.
The only logic change is here:
{code}
139 @@ -224,7 +226,11 @@ private boolean markMovedIfGoodBlock(DBlock block, 
StorageType targetStorageType
 140        synchronized (block) {
 141          synchronized (movedBlocks) {
 142            if (isGoodBlockCandidate(source, target, targetStorageType, 
block)) {
 143 -            this.block = block;
 144 +            if (block instanceof DBlockStriped) {
 145 +              reportedBlock = ((DBlockStriped) 
block).getInnerBlock(source);
 146 +            } else {
 147 +              reportedBlock = block;
 148 +            }
 149              if (chooseProxySource()) {
 150                movedBlocks.put(block);
 151                if (LOG.isDebugEnabled()) {
{code}
I'm sure it's really small. 
Changes like {{getBlockList()}} and {{markMovedIfGoodBlock}} need be done 
anyway if we use {{GlobalBlockGroupMap}}
So I insist 006 patch.

> Erasure Coding: update the Balancer/Mover data migration logic
> --------------------------------------------------------------
>
>                 Key: HDFS-7621
>                 URL: https://issues.apache.org/jira/browse/HDFS-7621
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Jing Zhao
>            Assignee: Walter Su
>              Labels: HDFS-7285
>         Attachments: HDFS-7621.001.patch, HDFS-7621.002.patch, 
> HDFS-7621.003.patch, HDFS-7621.004.patch, HDFS-7621.005.patch, 
> HDFS-7621.006.patch
>
>
> Currently the Balancer/Mover only considers the distribution of replicas of 
> the same block during data migration: the migration cannot decrease the 
> number of racks. With EC the Balancer and Mover should also take into account 
> the distribution of blocks belonging to the same block group.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to