Re: ask-2.5.0-1 IOerror
Marco Paganini <[email protected]>
| Newsgroups | gmane.mail.spam.active-spam-killer.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Erez, > I cannot easily reproduce it, but I believe this had something to do with > one of the pipes ASK is using being closed unexpectedly. Recall, I run ASK > in my .forward as follows: > > "| spamc | ask.py ... --procmail | mh-slocal" > > mh-slocal is sometimes unhappy when fed a particularly misconfigured sender > address, and it'll core dump, closing it's pipe unexpectedly. During these > core dumps I saw some of the IOerrors I reported. Ahhh! it could well be. If the delivery program croaks, you'd get this sort of error... > I lost my workstation disks during the power outage last week. In the days > that followed, during the recovery and restore procedure of my email, I had > to reinitialize my .ask/ and .spamassassin/ directories. So I fed into them > all my accumulated mail in the past year(!) Sometimes things were taking > too long and I got impatient, so I hit ^C to abort the script that fed all > my email, one message at a time, into "spamc|ask|slocal". It was during > this ^C aborts that I also got some of the IOerror messages. Perhaps you hit ^C exactly at the wrong time? Unusual, but Murphy never fails... > So you might want to check how ask.py behaves when it gets SIGINTR or > SIGPIPE, or an error reading from stdin, or an error writing to stdout. > This isn't an easy task b/c you have to consider that these errors or > signals could arrive at any time in ask.py's run. Maybe you might setup > some sighandlers just to catch these situations, and later on figure out how > to gracefully recover from these situations; or block certain signals during > critical times. The big problem really is that there's no way to "gracefully" recover when you're being executed from the .forward file. In the end, you'll have to return an error to the MTA, which will then soft or hard fail the delivery. Cheers, Paga > > Thanks, > Erez. -- Marco Paganini | UNIX / Linux / Networking [email protected] | PGP: http://www.paganini.net/pgp/ http://www.paganini.net | Magnus Frater te spectat... ------------------------------------------------------- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here:http://www.vmware.com/wl/offer/358/0