Archiviazione dei contenuti in streaming in modo che un oggetto possa superare il mucchio

Featurekamo-shared-library
Spegnimento
8 agosto 2026 alle ore 02:36 UTC
Autore
Kamo
Impegno
67391b8

Gli allegati di chat si stanno spostando a un soffitto 3 GiB. storeContentAddressed ha preso un byte[], che non può esprimere questo affatto — un array Java si ferma a Integer. MAX VALUE — e MinIOStorageService.upload quindi ha tamponato l'intero oggetto una seconda volta in modo che potesse riprovare la messa contro il prossimo nodo. Aggiunge un percorso di streaming insieme a entrambi: HashUtils.computeDigests deriva Blake3 e SHA3-256 da un passaggio, uploadStreaming riapre un InputStreamSource per nodo tentativo invece di tenere il byte, e il nuovo negozioContentAddressed sovraccarico hashes, dedups e negozi senza mai accumulare il contenuto. La memoria di picco è buffer di parte MinIO piuttosto che la dimensione del file. Non è deliberatamente @Transactional: memorizzare gigabytes richiede minuti, e la fila è pubblicato solo (isMissing=false) una volta che l'oggetto è conservato duramente, quindi un crash lascia lo stesso stato che il percorso tamponato lascia.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo