You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@seatunnel.apache.org by li...@apache.org on 2022/03/24 15:53:10 UTC

[incubator-seatunnel] branch dev updated: [Bug] [core] Fix the resource leak for unGzip (#1555)

This is an automated email from the ASF dual-hosted git repository.

lidongdai pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-seatunnel.git


The following commit(s) were added to refs/heads/dev by this push:
     new 0295d0f  [Bug] [core] Fix the resource leak for unGzip (#1555)
0295d0f is described below

commit 0295d0f58d8248902a458db53f976ac33c4336aa
Author: Benedict Jin <as...@apache.org>
AuthorDate: Thu Mar 24 23:53:05 2022 +0800

    [Bug] [core] Fix the resource leak for unGzip (#1555)
---
 .../java/org/apache/seatunnel/utils/CompressionUtils.java   | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/seatunnel-core/seatunnel-core-base/src/main/java/org/apache/seatunnel/utils/CompressionUtils.java b/seatunnel-core/seatunnel-core-base/src/main/java/org/apache/seatunnel/utils/CompressionUtils.java
index e2666f2..09fe2b3 100644
--- a/seatunnel-core/seatunnel-core-base/src/main/java/org/apache/seatunnel/utils/CompressionUtils.java
+++ b/seatunnel-core/seatunnel-core-base/src/main/java/org/apache/seatunnel/utils/CompressionUtils.java
@@ -102,14 +102,11 @@ public final class CompressionUtils {
 
         final File outputFile = new File(outputDir, inputFile.getName().substring(0, inputFile.getName().length() - 3));
 
-        final GZIPInputStream in = new GZIPInputStream(new FileInputStream(inputFile));
-        final FileOutputStream out = new FileOutputStream(outputFile);
-
-        IOUtils.copy(in, out);
-
-        in.close();
-        out.close();
-
+        try (final FileInputStream fis = new FileInputStream(inputFile);
+             final GZIPInputStream in = new GZIPInputStream(fis);
+             final FileOutputStream out = new FileOutputStream(outputFile)) {
+            IOUtils.copy(in, out);
+        }
         return outputFile;
     }