From 0bdd388dd84bbf9d6d38b33211383bfd919a1efb Mon Sep 17 00:00:00 2001 From: Konstantin Knizhnik Date: Tue, 4 Mar 2025 21:31:25 +0200 Subject: [PATCH] Make it possible to control lazy_sru_download through tenant config --- pageserver/src/basebackup.rs | 4 +--- pageserver/src/tenant/timeline.rs | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/pageserver/src/basebackup.rs b/pageserver/src/basebackup.rs index cd34697895..4ae67ed30d 100644 --- a/pageserver/src/basebackup.rs +++ b/pageserver/src/basebackup.rs @@ -312,9 +312,7 @@ where self.timeline.pg_version, )?; - let lazy_slru_download = (self.lazy_slru_download_enabled - || self.timeline.get_lazy_slru_download()) - && !self.full_backup; + let lazy_slru_download = self.timeline.get_lazy_slru_download(self.lazy_slru_download_enabled) && !self.full_backup; let pgversion = self.timeline.pg_version; let subdirs = dispatch_pgversion!(pgversion, &pgv::bindings::PGDATA_SUBDIRS[..]); diff --git a/pageserver/src/tenant/timeline.rs b/pageserver/src/tenant/timeline.rs index 106ed7a14b..d5f3c95e0a 100644 --- a/pageserver/src/tenant/timeline.rs +++ b/pageserver/src/tenant/timeline.rs @@ -2490,12 +2490,12 @@ impl Timeline { tenant_conf.is_gc_blocked_by_lsn_lease_deadline() } - pub(crate) fn get_lazy_slru_download(&self) -> bool { + pub(crate) fn get_lazy_slru_download(&self, lazy_slru_download_enabled_by_cp: bool) -> bool { let tenant_conf = self.tenant_conf.load(); tenant_conf .tenant_conf .lazy_slru_download - .unwrap_or(self.conf.default_tenant_conf.lazy_slru_download) + .unwrap_or(lazy_slru_download_enabled_by_cp || self.conf.default_tenant_conf.lazy_slru_download) } /// Checks if a get page request should get perf tracing