I use PostMaster.pl to pipe mail into OTRS (via a postfix transport map).

One problem I have noticed is that in the event of a temporary failure, 
PostMaster.pl will often exit with exit status 1. This causes postfix to 
bounce the mail, which is obviously undesirable.

In particular, this problem happens when the database is down -- our 
system bounced a couple of messages during a database upgrade when the 
database was offline for a minute or so.

I have prevented this problem in the future by wrapping most of 
PostMaster.pl in an eval block:

---------

eval {

... do PostMaster.pl stuff ...

};

if ($@) {
    # a problem occurred (for example, database unavailable);
    # return a TEMPFAIL error to the mail program to make it
    # try again
    exit (75);
}
else {
    exit (0);
}

---------

This prevents bouncing messages when the database is unavailable.

I think this problem must affect other people, too; it depends on how you 
run PostMaster.pl, of course, but I suspect this change would prevent 
many systems from bouncing mail during temporary problems -- for example, 
the same problem would happen if PostMaster.pl is run from an alias.

Perhaps this change could be considered for inclusion in OTRS?

-- 
 Robert Mathews, Tiger Technologies        http://www.tigertech.net/

 "Clever things make people feel stupid, and unexpected things make
  them feel scared."

_______________________________________________
OTRS mailing list: dev - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/dev
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/dev

Reply via email to