[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-09 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Attachment: continuousmovement.pdf

Attaching a brief design document to explain the problem, solution and a 
proposed high level design. Requesting comments on this.

 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Sub-task
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony
 Attachments: continuousmovement.pdf


 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the next moves as soon as 
 any (source , target) slot is available instead of waiting for all the 
 scheduled moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-09 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Attachment: (was: continuousmovement.pdf)

 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Sub-task
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony
 Attachments: continuousmovement.pdf


 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the next moves as soon as 
 any (source , target) slot is available instead of waiting for all the 
 scheduled moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-09 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Attachment: continuousmovement.pdf

 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Sub-task
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony
 Attachments: continuousmovement.pdf


 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the next moves as soon as 
 any (source , target) slot is available instead of waiting for all the 
 scheduled moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-02 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Issue Type: Sub-task  (was: Improvement)
Parent: HDFS-7197

 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Sub-task
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony

 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the next moves as soon as 
 any (source , target) slot is available instead of waiting for all the 
 scheduled moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-01 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Summary: Reduce impact of laggards on Mover  (was: Reduce impact of 
laggards on move)

 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Improvement
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony

 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
   // wait for pending move to finish and retry the failed migration
   hasRemaining |= 
 Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The processPath will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish. 
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the moves as soon as any 
 {source , target} slot is available instead f waiting for all the scheduled 
 moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-01 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Description: 
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
// wait for pending move to finish and retry the failed migration
hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The _processPath_ will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the moves as soon as any 
{source , target} slot is available instead of waiting for all the scheduled 
moves to finish. 



  was:
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
  // wait for pending move to finish and retry the failed migration
  hasRemaining |= 
Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The processPath will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish. 
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the moves as soon as any 
{source , target} slot is available instead f waiting for all the scheduled 
moves to finish. 




 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Improvement
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony

 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the moves as soon as any 
 {source , target} slot is available instead of waiting for all the scheduled 
 moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-01 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Description: 
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
// wait for pending move to finish and retry the failed migration
hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The _processPath_ will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the moves as soon as any 
(source , target) slot is available instead of waiting for all the scheduled 
moves to finish. 



  was:
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
// wait for pending move to finish and retry the failed migration
hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The _processPath_ will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the moves as soon as any 
{source , target} slot is available instead of waiting for all the scheduled 
moves to finish. 




 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Improvement
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony

 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the moves as soon as any 
 (source , target) slot is available instead of waiting for all the scheduled 
 moves to finish. 



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


[jira] [Updated] (HDFS-7461) Reduce impact of laggards on Mover

2014-12-01 Thread Benoy Antony (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoy Antony updated HDFS-7461:
---
Description: 
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
// wait for pending move to finish and retry the failed migration
hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The _processPath_ will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the next moves as soon as any 
(source , target) slot is available instead of waiting for all the scheduled 
moves to finish. 



  was:
The current Mover logic is as follows :

{code}
 for (Path target : targetPaths) {
hasRemaining |= processPath(target.toUri().getPath());
  }
// wait for pending move to finish and retry the failed migration
hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
{code}

The _processPath_ will schedule moves, but it is bounded by the number of 
concurrent moves (default is 5 per node} .  Once block moves are scheduled,  it 
will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
One slow move could keep the Mover  idle for a long time. 

It will be a  performance improvement to schedule the moves as soon as any 
(source , target) slot is available instead of waiting for all the scheduled 
moves to finish. 




 Reduce impact of laggards on Mover
 --

 Key: HDFS-7461
 URL: https://issues.apache.org/jira/browse/HDFS-7461
 Project: Hadoop HDFS
  Issue Type: Improvement
  Components: balancer  mover
Affects Versions: 2.6.0
Reporter: Benoy Antony
Assignee: Benoy Antony

 The current Mover logic is as follows :
 {code}
  for (Path target : targetPaths) {
 hasRemaining |= processPath(target.toUri().getPath());
   }
 // wait for pending move to finish and retry the failed migration
 hasRemaining |= Dispatcher.waitForMoveCompletion(storages.targets.values());
 {code}
 The _processPath_ will schedule moves, but it is bounded by the number of 
 concurrent moves (default is 5 per node} .  Once block moves are scheduled,  
 it will wait for ALL  scheduled moves to finish in _waitForMoveCompletion_.
 One slow move could keep the Mover  idle for a long time. 
 It will be a  performance improvement to schedule the next moves as soon as 
 any (source , target) slot is available instead of waiting for all the 
 scheduled moves to finish. 



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