procmail
[Top] [All Lists]

Re: efficiency question

2002-04-23 13:27:28
Matt Garretson skribis:

does the message get
searched from the beginning for each condition 
within a recipe? 

Not necessarily, you can (as an example) store an interesting part 
of the headerlines in a variable and continue with that. 

But, without having looked at the procmail-code, I assume that the file-
positions of the starts of the headerlines are cached, while working 
through the recipes, and that most-of-the-times the whole set of 
headerlines fits in a memoryblock, and, because many conditions have 
anchors to the start of the line, the comparisons won't make that 
much trouble. Or whatever optimizations the regexp-engine works 
with. 

Once you start to create conditions that need the Body, you are 
skating on much thinner ice of course. Body's can be very bulky 
nowadays. If at all possible, store the first so-many lines in 
a variable and work from that.

how to approach optimization of a large rc file

Make it much, much smaller. Limit it to the headers.
Deliver as soon as possible.

Ruud


_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>