Fix infinite loop when no files are left to remove (#3541)
An infinite loop can occur when the worker directory takes too much space, but no files are found to remove.
diff --git a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/utils/DirectoryCleaner.java b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/utils/DirectoryCleaner.java
index f4bfcd7..8d1da35 100644
--- a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/utils/DirectoryCleaner.java
+++ b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/utils/DirectoryCleaner.java
@@ -173,6 +173,7 @@
LOG.warn("No more files eligible to be deleted this round, but {} is over {} quota by {} MB",
forPerDir ? "worker directory: " + dirs.get(0).toAbsolutePath().normalize() : "log root directory",
forPerDir ? "per-worker" : "global", toDeleteSize * 1e-6);
+ break; // No entries left to delete
}
}
return new DeletionMeta(deletedSize, deletedFiles);