diff options
| author | tv <tv@krebsco.de> | 2026-11-05 04:11:34 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-05 04:11:34 +0100 |
| commit | fd268e2a7c8ff7e7707ae79b4f4916a50f222188 (patch) | |
| tree | 8a08177c77bfa64e177749e7b758b895443631bc /src/swarm/blob.rs | |
| parent | f0ef5c33998964d21c5cf5c582cd194327429003 (diff) | |
measure deflated chunks
Diffstat (limited to 'src/swarm/blob.rs')
| -rw-r--r-- | src/swarm/blob.rs | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/swarm/blob.rs b/src/swarm/blob.rs index 0bd2d37..f06b251 100644 --- a/src/swarm/blob.rs +++ b/src/swarm/blob.rs @@ -339,14 +339,20 @@ async fn serve( let chunk = &prepared.bytes[start..end]; // Deflated where it shrinks (`compress`): changes are stored uncompressed. let body = match crate::compress::deflate(chunk) { - Some(deflated) => BlobBody::DeflatedChunk { - index, - data: deflated.into(), - }, - None => BlobBody::Chunk { - index, - data: bytes::Bytes::copy_from_slice(chunk), - }, + Some(deflated) => { + state.stats.chunk_served(chunk.len(), deflated.len()); + BlobBody::DeflatedChunk { + index, + data: deflated.into(), + } + } + None => { + state.stats.chunk_served(chunk.len(), chunk.len()); + BlobBody::Chunk { + index, + data: bytes::Bytes::copy_from_slice(chunk), + } + } }; reply(state, peer, id, body).await; } |
