diff --git a/ivette/src/frama-c/server.ts b/ivette/src/frama-c/server.ts
index 63c8029b5575698bc22e51454016c46a68b67578..d13a5ab4b3fc1ccc80fea8317156c804fc8c9bd8 100644
--- a/ivette/src/frama-c/server.ts
+++ b/ivette/src/frama-c/server.ts
@@ -847,25 +847,24 @@ async function _send() {
   // when busy, will be eventually re-triggered
   if (!zmqIsBusy) {
     const cmds = queueCmd;
-    if (!cmds.length && _waiting()) cmds.push('POLL');
-    if (cmds.length) {
-      zmqIsBusy = true;
-      const ids = queueId;
-      queueCmd = [];
-      queueId = [];
-      try {
-        await zmqSocket?.send(cmds);
-        const resp = await zmqSocket?.receive();
-        _receive(resp);
-      } catch (error) {
-        D.error(`Error in send/receive on ZMQ socket. ${error.toString()}`);
-        _cancel(ids);
-      }
-      zmqIsBusy = false;
-    } else {
-      // No pending command nor pending response
-      rqCount = 0;
+    if (!cmds.length) {
+      cmds.push('POLL');
+      if (!_waiting())
+        rqCount = 0; // No pending command nor pending response
+    }
+    zmqIsBusy = true;
+    const ids = queueId;
+    queueCmd = [];
+    queueId = [];
+    try {
+      await zmqSocket?.send(cmds);
+      const resp = await zmqSocket?.receive();
+      _receive(resp);
+    } catch (error) {
+      D.error(`Error in send/receive on ZMQ socket. ${error.toString()}`);
+      _cancel(ids);
     }
+    zmqIsBusy = false;
     STATUS.emit(status);
   }
 }
diff --git a/src/plugins/server/main.ml b/src/plugins/server/main.ml
index 80b5075d2622728892bc9de4e3070b6e4b31b230..c30046212c893f7f92044d123fd6742a4d2d124f 100644
--- a/src/plugins/server/main.ml
+++ b/src/plugins/server/main.ml
@@ -209,7 +209,7 @@ let kill_exec e = e.killed <- true
 let kill_request eq id e = if eq id e.id then e.killed <- true
 
 let process_request (server : 'a server) (request : 'a request) : unit =
-  if Senv.debug_atleast 1 then
+  if Senv.debug_atleast 1 && (Senv.debug_atleast 3 || request <> `Poll) then
     Senv.debug "%a" (pp_request server.pretty) request ;
   match request with
   | `Poll -> ()