You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by aa...@apache.org on 2021/10/18 06:24:38 UTC
[hadoop] branch trunk updated: YARN-10976. Fix resource leak due to
Files.walk (#3552)
This is an automated email from the ASF dual-hosted git repository.
aajisaka pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/trunk by this push:
new ae95caa YARN-10976. Fix resource leak due to Files.walk (#3552)
ae95caa is described below
commit ae95caa60e094b91396f16a53655551d72c79491
Author: lujiefsi <lu...@ict.ac.cn>
AuthorDate: Mon Oct 18 14:24:15 2021 +0800
YARN-10976. Fix resource leak due to Files.walk (#3552)
Signed-off-by: Akira Ajisaka <aa...@apache.org>
---
.../resourceplugin/com/nec/VEDeviceDiscoverer.java | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/resourceplugin/com/nec/VEDeviceDiscoverer.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/resourceplugin/com/nec/VEDeviceDiscoverer.java
index 4bc92f2..8d80119 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/resourceplugin/com/nec/VEDeviceDiscoverer.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/resourceplugin/com/nec/VEDeviceDiscoverer.java
@@ -27,6 +27,7 @@ import java.nio.file.Paths;
import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
+import java.util.stream.Stream;
import org.apache.commons.lang3.mutable.MutableInt;
import org.apache.hadoop.util.Shell;
@@ -58,11 +59,11 @@ class VEDeviceDiscoverer {
public Set<Device> getDevicesFromPath(String path) throws IOException {
MutableInt counter = new MutableInt(0);
-
- return Files.walk(Paths.get(path), 1)
- .filter(p -> p.toFile().getName().startsWith("veslot"))
- .map(p -> toDevice(p, counter))
- .collect(Collectors.toSet());
+ try (Stream<Path> stream = Files.walk(Paths.get(path), 1)) {
+ return stream.filter(p -> p.toFile().getName().startsWith("veslot"))
+ .map(p -> toDevice(p, counter))
+ .collect(Collectors.toSet());
+ }
}
private Device toDevice(Path p, MutableInt counter) {
@@ -140,4 +141,4 @@ class VEDeviceDiscoverer {
Function<String[], CommandExecutor> provider) {
this.commandExecutorProvider = provider;
}
-}
\ No newline at end of file
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org