This commit is contained in:
Mateusz Gruszczyński committed 2026-10-12 11:22:42 +02:00
1 parent 68ada6680d
commit 180a0e4877
56 files changed
+9866 -205

No files matched your search

+7 -5
View File
@@ -170,7 +170,10 @@ impl Cache {
Some(validators) => validators.last_modified.clone(),
None => headers.get("last-modified").cloned(),
};
let initial_capacity = fill_size.min(64 * 1024);
let transformed = parts.extensions.get::<crate::transform::Applied>().is_some();
// A transformed, fully buffered body normally arrives as one owned
// frame. Do not allocate a second fill buffer before inspecting it.
let initial_capacity = if transformed { 0 } else { fill_size.min(64 * 1024) };
let Some(mut fill_gauge) = FillGauge::new(self.clone(), initial_capacity, settings) else {
self.counters.rejected_fills.fetch_add(1, Ordering::Relaxed);
self.record_reason(&ticket.scope, &ticket.domain, "hot_memory_pressure");
@@ -191,15 +194,14 @@ impl Cache {
plan,
headers,
data,
shared: None,
shared_allocated: 0,
fill_gauge,
settings: settings.clone(),
skip_compression: parts.extensions.get::<crate::compression::Skip>().is_some(),
origin_etag,
origin_last_modified,
transformed: parts
.extensions
.get::<crate::transform::Applied>()
.is_some(),
transformed,
_permit: permit,
_fill_leader: fill_leader,
};