Re: postscreen stress=yes

2010-01-13 Thread Noel Jones

On 1/13/2010 2:06 PM, Wietse Venema wrote:

Noel Jones:

Is postscreen supposed to always run with stress=yes?
Seems to me stress-adaptive behavior would be useful in
postscreen.


The stress=yes setting indicates that a master.cf service is using
up all its process slots. It is applicable only for servers that
accept connections from remote clients.

By design, postscreen runs as a single process. The stress=yes
parameter value therefore carries no useful information. Either
the postscreen service is not running at all, or it uses up all
its process slots because there is only one.

I could make a special case for single-process servers in master.cf
so that they don't have a stress parameter.


OK, I think I understand it better now.  I would find it less 
confusing without the stress=yes in the process listing.


Thanks to you and Viktor for the quick response.

  -- Noel Jones


Re: postscreen stress=yes

2010-01-13 Thread Wietse Venema
Noel Jones:
> Is postscreen supposed to always run with stress=yes?
> Seems to me stress-adaptive behavior would be useful in 
> postscreen.

The stress=yes setting indicates that a master.cf service is using
up all its process slots. It is applicable only for servers that
accept connections from remote clients.

By design, postscreen runs as a single process. The stress=yes
parameter value therefore carries no useful information. Either
the postscreen service is not running at all, or it uses up all
its process slots because there is only one.

I could make a special case for single-process servers in master.cf
so that they don't have a stress parameter.

Wietse

*** ./master_ent.c- Sat Jan 10 19:02:29 2009
--- ./master_ent.c  Wed Jan 13 15:04:47 2010
***
*** 526,532 
argv_add(serv->args, "-u", (char *) 0);
  if (chroot)
argv_add(serv->args, "-c", (char *) 0);
! if ((serv->flags & MASTER_FLAG_LOCAL_ONLY) == 0) {
argv_add(serv->args, "-o", "stress=" CONFIG_BOOL_YES, (char *) 0);
serv->stress_param_val =
serv->args->argv[serv->args->argc - 1] + sizeof("stress=") - 1;
--- 526,532 
argv_add(serv->args, "-u", (char *) 0);
  if (chroot)
argv_add(serv->args, "-c", (char *) 0);
! if ((serv->flags & MASTER_FLAG_LOCAL_ONLY) == 0 && serv->max_proc > 1) {
argv_add(serv->args, "-o", "stress=" CONFIG_BOOL_YES, (char *) 0);
serv->stress_param_val =
serv->args->argv[serv->args->argc - 1] + sizeof("stress=") - 1;


Re: postscreen stress=yes

2010-01-13 Thread Victor Duchovni
On Wed, Jan 13, 2010 at 01:44:05PM -0600, Noel Jones wrote:

> Is postscreen supposed to always run with stress=yes?
> Seems to me stress-adaptive behavior would be useful in postscreen.
>
> postfix 20637  0.0  0.1  3028 1704  ??  Ss1:32PM   0:00.01 postscreen 
> -l -n smtp -t inet -u -o stress=yes

There is only one process, so it is always at full occupancy, the
stress=yes is an artifact, and should not be taken seriously in this case.
Perhaps the master daemon can be changed to special-case services with
a process limit of 1.

-- 
Viktor.

Disclaimer: off-list followups get on-list replies or get ignored.
Please do not ignore the "Reply-To" header.

To unsubscribe from the postfix-users list, visit
http://www.postfix.org/lists.html or click the link below:


If my response solves your problem, the best way to thank me is to not
send an "it worked, thanks" follow-up. If you must respond, please put
"It worked, thanks" in the "Subject" so I can delete these quickly.


postscreen stress=yes

2010-01-13 Thread Noel Jones

Is postscreen supposed to always run with stress=yes?
Seems to me stress-adaptive behavior would be useful in 
postscreen.


# postconf mail_version
mail_version = 2.7-20100102

# ps -aux|grep stress
postfix 19967  0.0  1.0 23508 15444  ??  I12:50PM 
0:00.76 smtpd -t pass -u -o stress= -o 
content_filter=amavis-smtp:[1
postfix 19969  0.0  1.0 23508 15484  ??  I12:50PM 
0:00.90 smtpd -t pass -u -o stress= -o 
content_filter=amavis-smtp:[1
postfix 20637  0.0  0.1  3028 1704  ??  Ss1:32PM   0:00.01 
postscreen -l -n smtp -t inet -u -o stress=yes


(under light load)


Did I miss some docs or earlier discussion about this?

  -- Noel Jones