From 9b88b342ad562ba271604563a6b60bf3645fa88c Mon Sep 17 00:00:00 2001 From: Kavehhn174 Date: Wed, 19 Aug 2026 08:02:10 +0330 Subject: [PATCH] fix(file): skip redundant MinIO round-trips for files already in target bucket moveFromTempToMain was calling statObject/copy/remove against MinIO for every file already attached to a property on every save, even when the file was already in the target bucket and never touched temp. This added a blocking network round-trip per image/document on every property save. Now files already pointing at the target bucket are returned immediately without hitting MinIO. --- components/file/fileService.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/components/file/fileService.js b/components/file/fileService.js index 8d17aa7..7c20839 100644 --- a/components/file/fileService.js +++ b/components/file/fileService.js @@ -185,6 +185,12 @@ const moveFromTempToMain = async (files, targetBucket) => { return null } + // Already pointing at the target bucket (e.g. re-submitted unchanged on every + // property save) - skip the MinIO round-trips entirely, nothing to move. + if (rawStr.includes(`/${targetBucket}/`) && !rawStr.includes(`/${tempBucket}/`)) { + return rawStr.split('?')[0] + } + try { // Check if object exists in temp bucket const existsInTemp = await minioClient.statObject(tempBucket, fileName).then(() => true).catch(() => false)