From 2d6b78bc8cab83bf765b8f13ca0c9fbacc8a0ad2 Mon Sep 17 00:00:00 2001 From: "halim.kim" Date: Fri, 17 Apr 2026 14:47:43 +0900 Subject: [PATCH] AMBARI-26596: Fixing fd leak during kerberizing --- .../org/apache/ambari/server/api/services/AmbariMetaInfo.java | 4 ++-- .../state/kerberos/AbstractKerberosDescriptorFactory.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java index d15d02ab696..13d59d32622 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java @@ -944,8 +944,8 @@ public Map>> getServiceMetrics(String Gson gson = new Gson(); - try { - map = gson.fromJson(new FileReader(svc.getMetricsFile()), type); + try (FileReader reader = new FileReader(svc.getMetricsFile())) { + map = gson.fromJson(reader, type); svc.setMetrics(processMetricDefinition(map)); diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorFactory.java index c61b1a4dbc1..3e7b76a5e98 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorFactory.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorFactory.java @@ -51,8 +51,8 @@ protected Map parseFile(File file) throws IOException { } else if (!file.isFile() || !file.canRead()) { throw new IOException(String.format("%s is not a readable file", file.getAbsolutePath())); } else { - try { - return new Gson().fromJson(new FileReader(file), + try (FileReader reader = new FileReader(file)) { + return new Gson().fromJson(reader, new TypeToken>() { }.getType()); } catch (JsonSyntaxException e) {