diff --git a/pageserver/src/tenant/layer_map/historic_layer_coverage.rs b/pageserver/src/tenant/layer_map/historic_layer_coverage.rs index a834253cca..d4fdec52a2 100644 --- a/pageserver/src/tenant/layer_map/historic_layer_coverage.rs +++ b/pageserver/src/tenant/layer_map/historic_layer_coverage.rs @@ -431,6 +431,14 @@ impl BufferedHistoricLayerCoverage { } } + pub fn contains(&self, layer_key: &LayerKey) -> bool { + match self.buffer.get(layer_key) { + Some(None) => false, // layer remove was buffered + Some(_) => true, // layer insert was buffered + None => self.layers.contains_key(layer_key), // no buffered ops for this layer + } + } + pub fn insert(&mut self, layer_key: LayerKey, value: Value) { self.buffer.insert(layer_key, Some(value)); }