Remove auto-sync timers, keep only manual sync

Sync engine no longer has push (30s) or pull (5min) intervals.
Sync only happens on launch (InitialSync), manual Ctrl+R (FullSync),
or after create/edit/delete (TriggerSync).
This commit is contained in:
Ruben Rosario
2026-06-21 14:38:23 +01:00
parent 3035859dcb
commit 6254395570
+8 -22
View File
@@ -164,33 +164,19 @@ async fn run_sync_engine(
sync_stats: Arc<Mutex<SyncStats>>,
rx: &mut tokio::sync::mpsc::Receiver<SyncCommand>,
) {
let mut push_interval = tokio::time::interval(tokio::time::Duration::from_secs(30));
let mut pull_interval = tokio::time::interval(tokio::time::Duration::from_secs(300));
pull_interval.tick().await;
loop {
tokio::select! {
_ = push_interval.tick() => {
match rx.recv().await {
Some(SyncCommand::TriggerSync) => {
push_sync(&db, &api, &network_status, &sync_stats).await;
}
_ = pull_interval.tick() => {
pull_sync(&db, &api, &network_status, &sync_stats, false).await;
Some(SyncCommand::FullSync) => {
push_sync(&db, &api, &network_status, &sync_stats).await;
pull_sync(&db, &api, &network_status, &sync_stats, true).await;
}
cmd = rx.recv() => {
match cmd {
Some(SyncCommand::TriggerSync) => {
push_sync(&db, &api, &network_status, &sync_stats).await;
}
Some(SyncCommand::FullSync) => {
push_sync(&db, &api, &network_status, &sync_stats).await;
pull_sync(&db, &api, &network_status, &sync_stats, true).await;
}
Some(SyncCommand::InitialSync) => {
run_initial_sync(&db, &api, &network_status, &sync_stats).await;
}
Some(SyncCommand::Shutdown) | None => break,
}
Some(SyncCommand::InitialSync) => {
run_initial_sync(&db, &api, &network_status, &sync_stats).await;
}
Some(SyncCommand::Shutdown) | None => break,
}
}
}