From a16e35856aaedbb02fd1b6c55afc12994dd639b6 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 28 Apr 2003 03:40:26 +0000 Subject: Update. * nscd/connections.c (client_queued): New variable. (nscd_run): Revamp the loop. Don't call poll except for cleanup threads. Keep track of the number of delays caused because of busy worker threads. * nscd/nscd.h: Declare client_queued. * nscd/nscd_stat.c: Transmit and print client_queued information. --- nscd/nscd.h | 3 +++ nscd/nscd_stat.c | 5 +++++ 2 files changed, 8 insertions(+) (limited to 'nscd') diff --git a/nscd/nscd.h b/nscd/nscd.h index 89ac777273..73c94a5035 100644 --- a/nscd/nscd.h +++ b/nscd/nscd.h @@ -109,6 +109,9 @@ extern const char *server_user; /* Time the server was started. */ extern time_t start_time; +/* Number of times clients had to wait. */ +extern unsigned long int client_queued; + /* Prototypes for global functions. */ /* nscd.c */ diff --git a/nscd/nscd_stat.c b/nscd/nscd_stat.c index d55ca74bcd..7cfde982f6 100644 --- a/nscd/nscd_stat.c +++ b/nscd/nscd_stat.c @@ -61,6 +61,7 @@ struct statdata char version[sizeof (compilation)]; int debug_level; time_t runtime; + unsigned long int client_queued; int ndbs; struct dbstat dbs[lastdb]; }; @@ -75,6 +76,7 @@ send_stats (int fd, struct database dbs[lastdb]) memcpy (data.version, compilation, sizeof (compilation)); data.debug_level = debug_level; data.runtime = time (NULL) - start_time; + data.client_queued = client_queued; data.ndbs = lastdb; for (cnt = 0; cnt < lastdb; ++cnt) @@ -175,6 +177,9 @@ receive_print_stats (void) else printf (_(" %2lus server runtime\n"), diff); + printf (_("%15lu number of times clients had to wait\n"), + data.client_queued); + for (i = 0; i < lastdb; ++i) { unsigned long int hit = data.dbs[i].poshit + data.dbs[i].neghit; -- cgit v1.2.3