procmail: Timeout, terminating "/usr/bin/bogofilter"

David Relson relson at osagesoftware.com
Sun Jan 14 05:26:05 CET 2007


On Sun, 14 Jan 2007 03:51:42 +0100
Daniel Leidert wrote:

...[snip]...

> Unfortunately it did not help :( I used bf_compact and the size of
> wordlist.db was reduced to 110 MB. Then I started fetchmail again for
> some 800 mails. Now I found some more messages telling me:
> 
> Unable to allocate memory for transaction detail
> Can't open file 'wordlist.db' in directory '/home/dl/.bogofilter/'.
> error #12 - Cannot allocate memory.
> procmail: Program failure (3) of "/usr/bin/bogofilter"
> procmail: Rescue of unfiltered data succeeded
> 
> The file did exist and it worked before and after this error occurred
> (it occurred 10-12 times or so). During the complete run, the amount
> of bogofilter processes increased up to 450 (max) and again processes
> were terminated by procmail after time-out.
> 
> I'm now going to check my memory and my file-systems again. This is
> weired. Never had this problem before. 450 processes at the same time
> for 800 mails is a bad situation.
> 
> Regards, Daniel

So, it's not a max size issue.  Shucks :-<

I'd suggest modifying your procmail rules to stop using bogofilter
until you determine what's wrong.  At least that would get mail
flowing ...

With bogofilter out of the critical path for email delivery, you'll
have time for testing without worrying about losing mail.

What happens when you manually run bogfilter?  Does that succeed?

You might have encountered a BerkeleyDB problem.  Have you tried running
with transactions disabled?  Using the strace command, you can find
more about what's going on.  Of particular interest would be learning
the events immediately before the messages, i.e.

   Can't open file 'wordlist.db' in directory '/home/dl/.bogofilter/'.
   error #12 - Cannot allocate memory.

FWIW, "Can't open file" sounds like a permissions issue.  This
particular message is printed by wordlist.c.  "Error #12" is an error
code whose origins may well be inside the BerkeleyDB code.

By the way, what OS, distro, and hardware are you using?  I've been
assuming you're using BerkeleyDB, but I don't think you actually stated
that.  What do "bogofilter -V" and "bogofilter -Q" print?

And, the obvious question, what's changed on your system?  Have you
recently installed anything new/different?

Assuming you've got bogofilter's source code, one thing to do
is run "make check" to verify that the out-of-box environment is running
properly.

Regards,

David



More information about the Bogofilter mailing list