Hello,
I have an exim 4.43 on an external gateway talking to a couple of
exim 4.44 on an internal one. On excess of 30k messages are correctly being
transferred from outside to inside, except certain messages from
a single sending domain.
The offending messages get deliveries attempted to the first gateway
(m1) and if that doesn't work, delivery continues to the second (m2).
In actual fact, delivery takes place, because the recipients actually
get the message. My internal m1 host accepts the message, but the
external Exim logs an "closed connection in response to end of data"
and continues on to the second MX (m2), where that also happens. In
effect, all recipients get multiple copies of the message until I
manually `exim -Mrm' it.
I've done a `-d+all' on both sending and receiving Exim processes, but
I cannot detect the problem; as I mentioned: no trouble with any other
systems.
The sending Exim (on the outside) logs:
11:44:50 19188 SMTP>> MAIL FROM:<xxx@???> SIZE=1109599
11:44:50 19188 ---0 Get 0x80e81f8 56 string.c 347
11:44:50 19188 SMTP>> RCPT TO:<y1@???>
11:44:50 19188 SMTP>> RCPT TO:<y2@???>
11:44:50 19188 SMTP>> DATA
11:44:50 19188 waiting for data on socket
11:44:50 19188 read response data: size=92
11:44:50 19188 SMTP<< 250 OK
11:44:50 19188 SMTP<< 250 Accepted
11:44:50 19188 SMTP<< 250 Accepted
11:44:50 19188 SMTP<< 354 Enter message, ending with "." on a line by itself
11:44:50 19188 SMTP>> writing message and terminating "."
11:44:50 19188 writing data block fd=5 size=8189 timeout=300
...
11:44:50 19188 writing data block fd=5 size=2965 timeout=300
11:44:50 19188 waiting for data on socket
11:44:51 19188 ---0 Get 0x80e8230 96 string.c 347
11:44:51 19188 ---1 Get 0x80ef8b8 24 string.c 347
11:44:51 19188 LOG: MAIN
11:44:51 19188 Remote host m1.intdus.retail-sc.com [10.0.243.143] closed connection in response to end of data
11:44:51 19188 ok=0 send_quit=0 send_rset=1 continue_more=0 yield=0 first_address is NULL
11:44:51 19188 set_process_info: 19188 delivering 1CtkVP-00044e-Ji: just tried m1.intdus.retail-sc.com [10.0.243.143] fo
r y1@??? (& others): result OK
^^^ result is okay
^^^ but it continues on to the second host:
11:44:51 19188 ---0 Get 0x80e8290 24 retry.c 291
11:44:51 19188 added retry item for T:m1.intdus.retail-sc.com:10.0.243.143:1CtkVP-00044e-Ji: errno=-18 more_errno=0,A fl
ags=6
11:44:51 19188 ---0 Get 0x80e82a8 32 string.c 347
11:44:51 19188 ---0 Get 0x80e82c8 40 string.c 347
11:44:51 19188 address match: subject=*@m1.intdus.retail-sc.com pattern=*
11:44:51 19188 ---0 Get 0x80e82f0 24 string.c 387
11:44:51 19188 ---0 Get 0x80e8308 32 string.c 347
11:44:51 19188 m1.intdus.retail-sc.com in "*"? yes (matched "*")
11:44:51 19188 *@m1.intdus.retail-sc.com in "*"? yes (matched "*")
11:44:51 19188 checking status of m2.intdus.retail-sc.com
11:44:51 19188 ---0 Get 0x80e8328 40 string.c 347
11:44:51 19188 ---0 Get 0x80e8350 56 string.c 347
11:44:51 19188 locking /var/spool/exim_out/db/retry.lockfile
11:44:51 19188 locked /var/spool/exim_out/db/retry.lockfile
11:44:51 19188 opened hints database /var/spool/exim_out/db/retry: flags=0
11:44:51 19188 dbfn_read: key=T:m2.intdus.retail-sc.com:10.0.243.144
11:44:51 19188 dbfn_read: key=T:m2.intdus.retail-sc.com:10.0.243.144:1CtkVP-00044e-Ji
11:44:51 19188 ---0 Get 0x80e8388 128 dbfn.c 291
11:44:51 19188 no host retry record
11:44:51 19188 m2.intdus.retail-sc.com [10.0.243.144] status = usable
11:44:51 19188 ---0 Get 0x80e8408 40 string.c 347
11:44:51 19188 10.0.243.144 in serialize_hosts? no (option unset)
11:44:51 19188 delivering 1CtkVP-00044e-Ji to m2.intdus.retail-sc.com [10.0.243.144] (y1@???, ...)
11:44:51 19188 set_process_info: 19188 delivering 1CtkVP-00044e-Ji to m2.intdus.retail-sc.com [10.0.243.144] (y1@???, ...)
Can anyone see what is happening?
Thanks & regards,
-JP