GridFS er ikke en kernefunktion i MongoDB, men en konvention om lagring af binære data med tilhørende metadata. Du burde være i stand til at ændre ethvert dokument i fs.chunks
indsamling på sædvanlig måde, mens det tilsvarende dokument opbevares i fs.files
intakt. Hovedproblemet vil være genberegning af MD5 kontrolsum, men AFAIK bruges den ingen steder og er kun en "gratis" bonus. Alligevel er det stadig muligt at tilføje ændringer (se MD5-sammendrag af en genoptaget download).
Så for at tilføje til en eksisterende GridFS-fil skal du finde det tilsvarende dokument i fs.files
. Derefter afhængigt af sidste stykke fyldningsforhold (length
% chunkSize
==0) du enten omskriver det sidste stykke dokument i fs.chunks
respekterer chunkSize
, og/eller blot tilføje nye bidder med stigende n
Mark. Næste opdatering length
i fs.files
og muligvis andre metadata.