2003-04-27 Ulrich Drepper <drepper@redhat.com>
+ * 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.
+
* locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
* Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
/* 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 */
char version[sizeof (compilation)];
int debug_level;
time_t runtime;
+ unsigned long int client_queued;
int ndbs;
struct dbstat 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)
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;