En GridFS, no está eliminando/eliminando un solo documento, sino un montón de documentos (los archivos se dividen en fragmentos y cada fragmento es un documento separado). Eso significa que simplemente no es posible reemplazar un archivo de forma atómica.
Lo que puedes hacer en su lugar es:
- insertar un nuevo archivo con un nuevo nombre
- después de que esto sucediera (use la réplica reconocida escritura-preocupación), actualice todas las referencias al archivo antiguo para apuntar al nuevo
- después de recibir una confirmación de esto, puede eliminar el archivo antiguo
GridFS es una especie de característica de pirateo. A menudo es mejor usar un servidor de archivos separado con un sistema de archivos real para almacenar el contenido del archivo y almacenar solo los metadatos en MongoDB.