From 82a955ebfee683784930ba798a240df01fb2eb80 Mon Sep 17 00:00:00 2001 From: Joonas Koivunen Date: Wed, 16 Aug 2023 12:25:07 +0300 Subject: [PATCH] layer_manager: resident layer flush l0 changes --- pageserver/src/tenant/timeline/layer_manager.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pageserver/src/tenant/timeline/layer_manager.rs b/pageserver/src/tenant/timeline/layer_manager.rs index 924e8b4ffc..c0b311733c 100644 --- a/pageserver/src/tenant/timeline/layer_manager.rs +++ b/pageserver/src/tenant/timeline/layer_manager.rs @@ -175,7 +175,7 @@ impl LayerManager { /// Flush a frozen layer and add the written delta layer to the layer map. pub(crate) fn finish_flush_l0_layer( &mut self, - delta_layer: Option, + delta_layer: Option<&ResidentLayer>, frozen_layer_for_check: &Arc, ) { let l = self.layer_map.frozen_layers.pop_front(); @@ -187,7 +187,11 @@ impl LayerManager { assert!(compare_arced_layers(&l.unwrap(), frozen_layer_for_check)); if let Some(delta_layer) = delta_layer { - Self::insert_historic_layer(Arc::new(delta_layer), &mut updates, &mut self.layer_fmgr); + Self::insert_historic_layer( + delta_layer.as_ref().clone(), + &mut updates, + &mut self.layer_fmgr, + ); } updates.flush(); }