dgaudet 97/10/30 11:13:35
Modified: src CHANGES
src/main http_main.c
Log:
Improve the error message generated when the "server is busy".
PR: 1293
Reviewed by: Martin Kraemer, Jim Jagielski
Revision Changes Path
1.480 +3 -0 apachen/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apachen/src/CHANGES,v
retrieving revision 1.479
retrieving revision 1.480
diff -u -r1.479 -r1.480
--- CHANGES 1997/10/28 06:47:25 1.479
+++ CHANGES 1997/10/30 19:13:31 1.480
@@ -1,5 +1,8 @@
Changes with Apache 1.3b3
+ *) Improve the warning message generated when the "server is busy".
+ [Dean Gaudet] PR#1293
+
*) PORT: All ports which don't otherwise define DEF_WANTHSREGEX will
get Spencer regex by default. This is to avoid having to
discover bugs in operating system libraries. [Dean Gaudet]
1.240 +10 -5 apachen/src/main/http_main.c
Index: http_main.c
===================================================================
RCS file: /export/home/cvs/apachen/src/main/http_main.c,v
retrieving revision 1.239
retrieving revision 1.240
diff -u -r1.239 -r1.240
--- http_main.c 1997/10/27 19:10:36 1.239
+++ http_main.c 1997/10/30 19:13:34 1.240
@@ -3002,6 +3002,7 @@
int free_length;
int free_slots[MAX_SPAWN_RATE];
int last_non_dead;
+ int total_non_dead;
/* initialize the free_list */
free_length = 0;
@@ -3009,6 +3010,7 @@
to_kill = -1;
idle_count = 0;
last_non_dead = -1;
+ total_non_dead = 0;
sync_scoreboard_image();
for (i = 0; i < daemons_limit; ++i) {
@@ -3041,6 +3043,7 @@
break;
}
if (ss->status != SERVER_DEAD) {
+ ++total_non_dead;
last_non_dead = i;
#ifdef OPTIMIZE_TIMEOUTS
if (ss->timeout_len) {
@@ -3086,11 +3089,13 @@
idle_spawn_rate = 1;
}
else {
- if (idle_spawn_rate >= 4) {
- aplog_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, server_conf,
- "server seems busy, spawning %d children (you may need "
- "to increase StartServers, or Min/MaxSpareServers)",
- idle_spawn_rate);
+ if (idle_spawn_rate >= 8) {
+ aplog_error(APLOG_MARK, APLOG_NOERRNO|APLOG_INFO, server_conf,
+ "server seems busy, (you may need "
+ "to increase StartServers, or Min/MaxSpareServers), "
+ "spawning %d children, there are %d idle, and "
+ "%d total children", idle_spawn_rate,
+ idle_count, total_non_dead);
}
for (i = 0; i < free_length; ++i) {
make_child(server_conf, free_slots[i], now);