/*
- * $Id: helper.cc,v 1.54 2002/10/23 09:15:00 adrian Exp $
+ * $Id: helper.cc,v 1.55 2003/01/09 11:41:40 hno Exp $
*
* DEBUG: section 84 Helper process maintenance
* AUTHOR: Harvest Derived?
dlink_node *n;
helper_stateful_server *srv = NULL, *rv = NULL;
if (hlp == NULL) {
- debug(84, 3) ("helperStatefulReserve: hlp == NULL\n");
+ debug(84, 3) ("helperStatefulDefer: hlp == NULL\n");
return NULL;
}
debug(84, 5) ("helperStatefulDefer: Running servers %d.\n", hlp->n_running);
debug(84, 1) ("helperStatefulDefer: No running servers!. \n");
return NULL;
}
- srv = StatefulGetFirstAvailable(hlp);
- /* all currently busy:loop through servers and find server with the shortest queue */
- rv = srv;
- if (rv == NULL)
+ rv = srv = StatefulGetFirstAvailable(hlp);
+ if (rv == NULL) {
+ /*
+ * all currently busy; loop through servers and find server
+ * with the shortest queue
+ */
for (n = hlp->servers.head; n != NULL; n = n->next) {
srv = (helper_stateful_server *)n->data;
if (srv->flags.reserved == S_HELPER_RESERVED)
continue;
rv = srv;
}
+ }
if (rv == NULL) {
debug(84, 1) ("helperStatefulDefer: None available.\n");
return NULL;
helper_server *srv;
dlink_node *link;
double tt;
+ storeAppendPrintf(sentry, "program: %s\n",
+ hlp->cmdline->key);
storeAppendPrintf(sentry, "number running: %d of %d\n",
hlp->n_running, hlp->n_to_start);
storeAppendPrintf(sentry, "requests sent: %d\n",
storeAppendPrintf(sentry, "avg service time: %d msec\n",
hlp->stats.avg_svc_time);
storeAppendPrintf(sentry, "\n");
- storeAppendPrintf(sentry, "%7s\t%7s\t%7s\t%11s\t%s\t%7s\t%7s\t%7s\t%7s\n",
+ storeAppendPrintf(sentry, "%7s\t%7s\t%7s\t%11s\t%20s\t%s\t%7s\t%7s\t%7s\n",
"#",
"FD",
"PID",
for (link = hlp->servers.head; link; link = link->next) {
srv = (helper_stateful_server *)link->data;
tt = 0.001 * tvSubMsec(srv->dispatch_time, current_time);
- storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%11d\t%c%c%c%c%c%c\t%7.3f\t%7d\t%s\n",
+ storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%20d\t%c%c%c%c%c%c\t%7.3f\t%7d\t%s\n",
srv->index + 1,
srv->rfd,
srv->pid,