From 40f7930a7da65325280dfc69f5940045b2147bc7 Mon Sep 17 00:00:00 2001 From: Arseny Sher Date: Fri, 27 Sep 2024 09:59:38 +0300 Subject: [PATCH] safekeeper: skip syncfs on start if --no-sync is specified. (#9166) https://neondb.slack.com/archives/C059ZC138NR/p1727350911890989?thread_ts=1727350211.370869&cid=C059ZC138NR --- safekeeper/src/bin/safekeeper.rs | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/safekeeper/src/bin/safekeeper.rs b/safekeeper/src/bin/safekeeper.rs index 5270934f5e..1e5f963a4f 100644 --- a/safekeeper/src/bin/safekeeper.rs +++ b/safekeeper/src/bin/safekeeper.rs @@ -374,14 +374,16 @@ type JoinTaskRes = Result, JoinError>; async fn start_safekeeper(conf: SafeKeeperConf) -> Result<()> { // fsync the datadir to make sure we have a consistent state on disk. - let dfd = File::open(&conf.workdir).context("open datadir for syncfs")?; - let started = Instant::now(); - utils::crashsafe::syncfs(dfd)?; - let elapsed = started.elapsed(); - info!( - elapsed_ms = elapsed.as_millis(), - "syncfs data directory done" - ); + if !conf.no_sync { + let dfd = File::open(&conf.workdir).context("open datadir for syncfs")?; + let started = Instant::now(); + utils::crashsafe::syncfs(dfd)?; + let elapsed = started.elapsed(); + info!( + elapsed_ms = elapsed.as_millis(), + "syncfs data directory done" + ); + } info!("starting safekeeper WAL service on {}", conf.listen_pg_addr); let pg_listener = tcp_listener::bind(conf.listen_pg_addr.clone()).map_err(|e| {