HDFS-10580. DiskBalancer: Make use of unused methods in GreedyPlanner to print debug info. Contributed by Yiqun Lin

This commit is contained in:
Anu Engineer 2016-08-15 12:40:29 -07:00
parent 24249115bf
commit bed69d18e6

View File

@ -158,6 +158,7 @@ private void applyStep(Step nextStep, DiskBalancerVolumeSet currentSet,
// since the volume data changed , we need to recompute the DataDensity.
currentSet.computeVolumeDataDensity();
printQueue(currentSet.getSortedQueue());
}
/**
@ -184,7 +185,7 @@ private Step computeMove(DiskBalancerVolumeSet currentSet,
if (maxLowVolumeCanReceive <= 0) {
LOG.debug("{} Skipping disk from computation. Maximum data size " +
"achieved.", lowVolume.getPath());
lowVolume.setSkip(true);
skipVolume(currentSet, lowVolume);
}
long maxHighVolumeCanGive = highVolume.getUsed() -
@ -195,7 +196,7 @@ private Step computeMove(DiskBalancerVolumeSet currentSet,
if (maxHighVolumeCanGive <= 0) {
LOG.debug(" {} Skipping disk from computation. Minimum data size " +
"achieved.", highVolume.getPath());
highVolume.setSkip(true);
skipVolume(currentSet, highVolume);
}
@ -219,17 +220,20 @@ private Step computeMove(DiskBalancerVolumeSet currentSet,
*/
private void skipVolume(DiskBalancerVolumeSet currentSet,
DiskBalancerVolume volume) {
String message = String.format(
if (LOG.isDebugEnabled()) {
String message =
String.format(
"Skipping volume. Volume : %s " +
"Type : %s Target " +
"Number of bytes : %f lowVolume dfsUsed : %d. Skipping this " +
"volume from all future balancing calls.", volume.getPath(),
volume.getStorageType(),
currentSet.getIdealUsed() * volume.getCapacity(), volume.getUsed());
volume.setSkip(true);
currentSet.getIdealUsed() * volume.getCapacity(),
volume.getUsed());
LOG.debug(message);
}
volume.setSkip(true);
}
// Removes all volumes which are part of the volumeSet but skip flag is set.
private void removeSkipVolumes(DiskBalancerVolumeSet currentSet) {
@ -242,6 +246,7 @@ private void removeSkipVolumes(DiskBalancerVolumeSet currentSet) {
}
}
currentSet.computeVolumeDataDensity();
printQueue(currentSet.getSortedQueue());
}
/**
@ -251,14 +256,14 @@ private void removeSkipVolumes(DiskBalancerVolumeSet currentSet) {
* @param queue - Queue
*/
private void printQueue(TreeSet<DiskBalancerVolume> queue) {
String format = String.format("First Volume : %s, DataDensity : %f",
queue.first().getPath(),
queue.first().getVolumeDataDensity());
LOG.info(format);
format = String
.format("Last Volume : %s, DataDensity : %f%n", queue.last().getPath(),
queue.last().getVolumeDataDensity());
LOG.info(format);
if (LOG.isDebugEnabled()) {
String format =
String.format(
"First Volume : %s, DataDensity : %f, " +
"Last Volume : %s, DataDensity : %f",
queue.first().getPath(), queue.first().getVolumeDataDensity(),
queue.last().getPath(), queue.last().getVolumeDataDensity());
LOG.debug(format);
}
}
}