diff --git a/src/plugins/server/main.ml b/src/plugins/server/main.ml
index 006d4b9d15221f5cc3013df7bbb3e0edc4d647a3..9195d9a2f67252094c81db26be6d078b5cb3f03b 100644
--- a/src/plugins/server/main.ml
+++ b/src/plugins/server/main.ml
@@ -433,6 +433,7 @@ let foreground server =
     server.running <- Idle ;
     server.cmdline <- Some false ;
     emitter := do_signal server ;
+    Task.on_idle := Db.while_progress ~debounced:50 ;
     match server.daemon with
     | None -> ()
     | Some daemon ->