From e8703eae6eadcf69ff12b2dbccd9d595f776296a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=B0=8F=E5=B9=B3?= Date: Thu, 24 Jul 2025 16:02:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E4=BA=86=E7=A9=BA=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E7=9A=84=E6=83=85=E5=86=B5=EF=BC=8C=E5=BE=88=E5=A4=9A?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=9C=A8=E5=AE=9E=E7=8E=B0=20one=20=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E6=97=B6=E4=B9=A0=E6=83=AF=E4=BA=8E=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E7=A9=BA=E5=AF=B9=E8=B1=A1=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../minioplus/core/engine/impl/StorageEngineServiceImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/minio-plus-core/src/main/java/org/liuxp/minioplus/core/engine/impl/StorageEngineServiceImpl.java b/minio-plus-core/src/main/java/org/liuxp/minioplus/core/engine/impl/StorageEngineServiceImpl.java index 9901e3d..e2b5230 100644 --- a/minio-plus-core/src/main/java/org/liuxp/minioplus/core/engine/impl/StorageEngineServiceImpl.java +++ b/minio-plus-core/src/main/java/org/liuxp/minioplus/core/engine/impl/StorageEngineServiceImpl.java @@ -512,7 +512,10 @@ public class StorageEngineServiceImpl implements StorageEngineService { fileMetadataInfo.setIsFinished(Boolean.TRUE); FileMetadataInfoVo fileMetadataInfoVo = metadataRepository.one(fileMetadataInfo); - if (null == fileMetadataInfoVo) { + if (null == fileMetadataInfoVo + || (null == fileMetadataInfoVo.getId() && null == fileMetadataInfoVo.getFileKey() && null == fileMetadataInfoVo.getFileMd5()) + ) { + // 兼容了空对象的情况,很多用户在实现 one 方法时习惯于返回一个空对象 // 当不存在任何该MD5值的文件元数据时,删除物理文件 minioS3Client.removeObject(metadata.getStorageBucket(), metadata.getStoragePath() + "/" + metadata.getFileMd5()); if (Boolean.TRUE.equals(metadata.getIsPreview())) {