DiskBalancer.BlockMoverpublic static class DiskBalancer.DiskBalancerMover extends java.lang.Object implements DiskBalancer.BlockMover
| Constructor | Description |
|---|---|
DiskBalancerMover(FsDatasetSpi dataset,
org.apache.hadoop.conf.Configuration conf) |
Constructs diskBalancerMover.
|
| Modifier and Type | Method | Description |
|---|---|---|
long |
computeDelay(long bytesCopied,
long timeUsed,
org.apache.hadoop.hdfs.server.datanode.DiskBalancerWorkItem item) |
Computes sleep delay needed based on the block that just got copied.
|
void |
copyBlocks(DiskBalancer.VolumePair pair,
org.apache.hadoop.hdfs.server.datanode.DiskBalancerWorkItem item) |
Copies blocks from a set of volumes.
|
FsDatasetSpi |
getDataset() |
Returns a pointer to the current dataset we are operating against.
|
long |
getElapsedSeconds() |
Number of seconds elapsed.
|
long |
getStartTime() |
Returns time when this plan started executing.
|
void |
setExitFlag() |
Signals copy block to exit.
|
void |
setRunnable() |
Sets Diskmover copyblocks into runnable state.
|
boolean |
shouldRun() |
Returns the shouldRun boolean flag.
|
public DiskBalancerMover(FsDatasetSpi dataset, org.apache.hadoop.conf.Configuration conf)
dataset - Datasetconf - Configurationpublic void setRunnable()
setRunnable in interface DiskBalancer.BlockMoverpublic void setExitFlag()
setExitFlag in interface DiskBalancer.BlockMoverpublic boolean shouldRun()
@VisibleForTesting
public long computeDelay(long bytesCopied,
long timeUsed,
org.apache.hadoop.hdfs.server.datanode.DiskBalancerWorkItem item)
bytesCopied - - byteCopied.timeUsed - in millisecondsitem - DiskBalancerWorkItempublic void copyBlocks(DiskBalancer.VolumePair pair, org.apache.hadoop.hdfs.server.datanode.DiskBalancerWorkItem item)
copyBlocks in interface DiskBalancer.BlockMoverpair - - Source and Destination Volumes.item - - Number of bytes to move from volumes.public FsDatasetSpi getDataset()
getDataset in interface DiskBalancer.BlockMoverpublic long getStartTime()
getStartTime in interface DiskBalancer.BlockMoverpublic long getElapsedSeconds()
getElapsedSeconds in interface DiskBalancer.BlockMoverCopyright © 2008–2025 Apache Software Foundation. All rights reserved.