Hi, I have a large installation with Exim + SpamAssassin There is a group of machines acting as front-ends. They receive mails from outside and send them to the appropiate back-end. These front-ends have a timeout for all connections of 30s
The back-ends, where the mailboxes are, have Exim with a data ACL for spam detection (default configuration, as in the documentation). In the back-ends there is a problem with disk access which we are trying to solve but it is causing another problem: message duplication. I will try to describe: - a message is received in the front-ends - a connection is opened to the back-end and the message is sent - the backend starts processing the message to determine if it is spam. - This processing takes too long (due to the disk problem) and when the backend tries to send the final response the sender has already closed the connection for timeout So the result is that the front-end considers that the message has not been sent as it has not received the final response BUT the message HAS been received (and delivered) by the back-end. Later the front-end sends the message again and that is why the message gets duplicated. This will continue to happen until the backend processing time is less than the front-end's timeout. Of course we have to solve our disk problem in the back-ends, but, how can we prevent the message duplication? Is there something we are not doing properly? Of course I can increase the timeout in the front-ends, but that does not really solve the problem. Probably it will happen less times, but it will still happen. I have tried to set the variable local_scan_timeout to a low value (10s). Does this make sense? It didnt make any difference. Any suggestions? If my explanation is not clear enough I can provide more details. Help will be appreciated. Ernesto. -- ## List details at http://www.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://www.exim.org/eximwiki/
