changeset 9871:8a38b5b82a1d HEAD

master: Check process_limit for auth dest processes. Log when reaching limit.
author Timo Sirainen <tss@iki.fi>
date Fri, 04 Sep 2009 15:00:37 -0400
parents 1cdee825e414
children af7f0be02d3b
files src/master/service-monitor.c src/master/service-process.c
diffstat 2 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/master/service-monitor.c	Fri Sep 04 14:58:46 2009 -0400
+++ b/src/master/service-monitor.c	Fri Sep 04 15:00:37 2009 -0400
@@ -113,6 +113,8 @@
 	if (service->process_count == service->process_limit) {
 		/* we've reached our limits, new connections will have to
 		   wait until there are more processes available */
+		i_warning("service(%s): process_limit reached, "
+			  "connections are being dropped", service->set->name);
 		service->listen_pending = TRUE;
                 service_monitor_listen_stop(service);
 		return;
--- a/src/master/service-process.c	Fri Sep 04 14:58:46 2009 -0400
+++ b/src/master/service-process.c	Fri Sep 04 15:00:37 2009 -0400
@@ -455,6 +455,11 @@
 		/* probably throttling service, don't create new processes */
 		return NULL;
 	}
+	if (service->process_count >= service->process_limit) {
+		i_warning("service(%s): process_limit reached, "
+			  "connections are being dropped", service->set->name);
+		return NULL;
+	}
 
 	switch (service->type) {
 	case SERVICE_TYPE_AUTH_SOURCE: