diff --git a/powerjob-server/powerjob-server-persistence/src/main/java/tech/powerjob/server/persistence/storage/impl/MySqlSeriesDfsService.java b/powerjob-server/powerjob-server-persistence/src/main/java/tech/powerjob/server/persistence/storage/impl/MySqlSeriesDfsService.java index 9493f62c..4f30ba34 100644 --- a/powerjob-server/powerjob-server-persistence/src/main/java/tech/powerjob/server/persistence/storage/impl/MySqlSeriesDfsService.java +++ b/powerjob-server/powerjob-server-persistence/src/main/java/tech/powerjob/server/persistence/storage/impl/MySqlSeriesDfsService.java @@ -141,6 +141,7 @@ public class MySqlSeriesDfsService extends AbstractDFsService { Map meta = Maps.newHashMap(); meta.put("_server_", NetUtils.getLocalHost()); meta.put("_local_file_path_", storeRequest.getLocalFile().getAbsolutePath()); + BufferedInputStream bufferedInputStream = new BufferedInputStream(Files.newInputStream(storeRequest.getLocalFile().toPath())); Date date = new Date(System.currentTimeMillis()); @@ -153,7 +154,7 @@ public class MySqlSeriesDfsService extends AbstractDFsService { pst.setString(4, JsonUtils.toJSONString(meta)); pst.setLong(5, storeRequest.getLocalFile().length()); pst.setInt(6, SwitchableStatus.ENABLE.getV()); - pst.setBlob(7, new BufferedInputStream(Files.newInputStream(storeRequest.getLocalFile().toPath()))); + pst.setBlob(7, bufferedInputStream); pst.setString(8, null); pst.setDate(9, date); pst.setDate(10, date); @@ -165,6 +166,8 @@ public class MySqlSeriesDfsService extends AbstractDFsService { } catch (Exception e) { log.error("[MySqlSeriesDfsService] store [{}] failed!", fileLocation); ExceptionUtils.rethrow(e); + }finally { + bufferedInputStream.close(); } }