This is an automated email from the ASF dual-hosted git repository. rakeshr pushed a commit to branch branch-3.2 in repository https://gitbox.apache.org/repos/asf/hadoop.git
commit dc2fad4bd36944fc58d90c7618f125bdaac14d85 Author: Rakesh Radhakrishnan <rake...@apache.org> AuthorDate: Fri Aug 9 14:07:54 2019 +0530 HDFS-14700. Clean up pmem cache before setting pmem cache capacity. Contributed by Feilong He. (cherry picked from commit f6fa865d6fcb0ef0a25a00615f16f383e5032373) --- .../datanode/fsdataset/impl/PmemVolumeManager.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/PmemVolumeManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/PmemVolumeManager.java index 2d77f7a..969d18b 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/PmemVolumeManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/PmemVolumeManager.java @@ -218,6 +218,8 @@ public final class PmemVolumeManager { try { File pmemDir = new File(volumes[n]); File realPmemDir = verifyIfValidPmemVolume(pmemDir); + // Clean up the cache left before, if any. + cleanup(realPmemDir); this.pmemVolumes.add(realPmemDir.getPath()); long maxBytes; if (maxBytesPerPmem == -1) { @@ -242,17 +244,20 @@ public final class PmemVolumeManager { throw new IOException( "At least one valid persistent memory volume is required!"); } - cleanup(); + } + + void cleanup(File realPmemDir) { + try { + FileUtils.cleanDirectory(realPmemDir); + } catch (IOException e) { + LOG.error("Failed to clean up " + realPmemDir.getPath(), e); + } } void cleanup() { // Remove all files under the volume. - for (String pmemDir: pmemVolumes) { - try { - FileUtils.cleanDirectory(new File(pmemDir)); - } catch (IOException e) { - LOG.error("Failed to clean up " + pmemDir, e); - } + for (String pmemVolume : pmemVolumes) { + cleanup(new File(pmemVolume)); } } --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org