Allow remove_wal.rs to run on inactive timelines (#6462)

Temporary enable it on staging to help with
https://github.com/neondatabase/neon/issues/6403
Can be also deployed to prod if will work well on staging.
This commit is contained in:
Arthur Petukhovsky
2024-01-24 19:48:56 +03:00
committed by GitHub
parent 210700d0d9
commit 8cb8c8d7b5

View File

@@ -7,6 +7,8 @@ use tracing::*;
use crate::{GlobalTimelines, SafeKeeperConf};
const ALLOW_INACTIVE_TIMELINES: bool = true;
pub async fn task_main(conf: SafeKeeperConf) -> anyhow::Result<()> {
let wal_removal_interval = Duration::from_millis(5000);
loop {
@@ -15,10 +17,13 @@ pub async fn task_main(conf: SafeKeeperConf) -> anyhow::Result<()> {
let tlis = GlobalTimelines::get_all();
for tli in &tlis {
if !tli.is_active().await {
let is_active = tli.is_active().await;
if is_active {
active_timelines += 1;
}
if !ALLOW_INACTIVE_TIMELINES && !is_active {
continue;
}
active_timelines += 1;
let ttid = tli.ttid;
async {
if let Err(e) = tli.maybe_persist_control_file().await {