Skip to content

Commit efa8d96

Browse files
s logic
1 parent d2fc810 commit efa8d96

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

lib/api/apiUtils/object/abortMultipartUpload.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,9 +195,21 @@ function abortMultipartUpload(authInfo, bucketName, objectKey, uploadId, log,
195195
versionId: objMDWithMatchingUploadID.versionId,
196196
}, log, err => {
197197
if (err) {
198-
log.error('error deleting object metadata', { error: err });
198+
// Handle concurrent deletion of this object metadata
199+
if (err.is?.NoSuchKey) {
200+
log.debug('object metadata already deleted or does not exist', {
201+
method: 'abortMultipartUpload',
202+
bucketName,
203+
objectKey,
204+
versionId: objMDWithMatchingUploadID.versionId,
205+
});
206+
} else {
207+
log.error('error deleting object metadata', { error: err });
208+
}
199209
}
200-
return next(err, mpuBucket, storedParts, destBucket, objMDWithMatchingUploadID, skipDataDelete);
210+
// Continue with the operation regardless of deletion success/failure
211+
// The important part is that we tried to clean up
212+
return next(null, mpuBucket, storedParts, destBucket, objMDWithMatchingUploadID, skipDataDelete);
201213
});
202214
},
203215
function deleteData(mpuBucket, storedParts, destBucket, objMDWithMatchingUploadID,

0 commit comments

Comments
 (0)