KamoCRM

Stochează atașamente prin conducta de decuplare în loc de un obiect pe încărcare

FixMediaService
Shipped
6 august 2026 la 20:45 UTC
Author
Kamo
Commit
0eda67f

Atașamente scris propriul lor " <imgId> / <fileName>" obiect pe fiecare încărcare, ocolind conţinut-adresat magazin în întregime Conversaţia a ocupat trei obiecte. Încarcă acum hash într-un ImgDat comun, atât de identic conținutul este stocat o dată, indiferent cât de des este atașat, și un atașament care se potrivește un document aflat deja în sistem nu costă deloc depozitare. Rândul Img rămâne per-ataşament: poartă conversaţia, uploader şi revocarea stat, și este încă ceea ce accesul este verificat împotriva. Numai octeți sunt împărtășite. Citește rezolva cheia cu adrese de conținut atunci când rândul are o dat și cad înapoi la moștenire per-upload obiect atunci când nu, astfel încât atașamentele pre-întâmpină acest lucru ține de lucru inclusiv orice scrisoare scrisă de o instanță care nu s-a răsturnat încă. ChatAtachmentDedupBackfills pliază acele atașamente moștenite la pornire: selectează doar Rânduri cu un nul dat și seturi care dat ultima, astfel încât este idepotent, auto-vindecare peste Lansare, și un eșec pe un rând lasă pe calea moștenirii încă de lucru mai degrabă decât pornirea defectuoasă. Obiectele de moștenire sunt lăsate în loc; nimic nu șterge din MinIO.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing