On Sun, Mar 05, 2017 at 07:56:12PM +0000, Jeremy Harris wrote: > On 04/03/17 22:27, Wayne Cuddy wrote:
> > Instrumenting the code with rudimentary timing metrics I found that on
> > average in versions 4.66-4.87 readconf_main takes < 9000
> > microseconds.
> >
> > On 4.88 it takes on average 63000 microseconds.
>
> 4.88 added builtin macros (for assorted features) and a startup
> cost is associated with these. They are however only created
> in a lazy fashion, when a macro name is seen in the config input
> which starts underbar, letter. If you do not have any use of
> a macro matching that you should not see a longer startup cost
> for that specific reason.
>
> Please check that and say whether it provides a fix for you.
I am using macros but none that start with an underbar '_'. I have one
that defines the configuration directory.
CFG_DIR = /etc/exim
I then use that throughout the configuration file.
Aside from adding the "keep_environment =" line to exim.conf no other
changes were made to my configuration between 4.66 and 4.88.
I can try expanding the simple macro above manually in my
configuration just to see if that causes the problem to go away.
I can also sanitize the configuration and post it here if you think
that would help.
>
> > If I changed from piping the message to EXIM to connecting to
> > localhost:25 and sending the message via SMTP would that remove calls to
> > readconf_main.
>
> It would remove the per-message reception startup configuration read.
> The delivery cost would still be there.
>
> --
> Cheers,
> Jeremy
>