ctdb-daemon: Decrement pending calls statistics when calls are deferred
authorAmitay Isaacs <amitay@gmail.com>
Fri, 12 Sep 2014 00:50:27 +0000 (10:50 +1000)
committerAmitay Isaacs <amitay@samba.org>
Fri, 12 Sep 2014 06:46:14 +0000 (08:46 +0200)
Deferred calls should not be treated as pending calls since they are
re-processed from the beginning.

Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
ctdb/server/ctdb_daemon.c

index 46a134c60df030ac725a546c0fbb23dcb9f5e3f5..65b7109620f19a4516db00e3d000fd14b8ddcdc4 100644 (file)
@@ -653,6 +653,7 @@ static void daemon_request_call_from_client(struct ctdb_client *client,
                        if (ret != 0) {
                                DEBUG(DEBUG_ERR,(__location__ " ctdb_ltdb_unlock() failed with error %d\n", ret));
                        }
+                       CTDB_DECREMENT_STAT(ctdb, pending_calls);
                        return;
                }
        }
@@ -685,6 +686,7 @@ static void daemon_request_call_from_client(struct ctdb_client *client,
                if (ctdb_add_revoke_deferred_call(ctdb, ctdb_db, key, (struct ctdb_req_header *)c, daemon_incoming_packet, client) != 0) {
                        ctdb_fatal(ctdb, "Failed to add deferred call for revoke child");
                }
+               CTDB_DECREMENT_STAT(ctdb, pending_calls);
                return;
        }
 
@@ -706,6 +708,7 @@ static void daemon_request_call_from_client(struct ctdb_client *client,
                        ctdb_fatal(ctdb, "Failed to add deferred call for revoke child");
                }
 
+               CTDB_DECREMENT_STAT(ctdb, pending_calls);
                return;
        }