Dear Exim Gurus -
I've only just joined the list, so apologies in advance if I break in
any rules.
We've been happily running exim 2.05 on all our Sun (SunOS 4.1.4,
Solaris 2.6) systems for quite a while now with no problems. Since
sometime this morning, however, all of our mailers have gone on a go-
slow for no apparent reason (or, at least, none that I can discover).
In particular, when the Exim demon forks a copy of itself to handle an
incoming SMTP request, the forked copy seems to go around in circles
for a significant (up to 5 minutes, so far) amount of time before
deciding to handle the delivery (whether it be local or one to pass
onwards).
I include, at the end of this, snippets of what I think are the
relevent bits of truss-ed output in the hope that someone can tell me
what's happening, why and, more importantly, what I might be able to do
to stop it. (If anyone thinks it might help, I can mail the full
trace).
Many TIA.
randy
----------------------
Randy Banks (randy@???)
ISER, University of Essex
Colchester, Essex, UK CO4 3SQ
tel: +44 (0)1206 873 067; fax: +44 (0)1206 873 151
----- cut here ----
[snipped - PID 28993 is the process forked by the Exim demon]
28993: sysinfo(SI_SRPC_DOMAIN, "essex.ac.uk", 1024) = 12
28993: open("/etc/resolv.conf", O_RDONLY) = 0
28993: ioctl(0, TCGETA, 0xEFFFEBFC) Err#25 ENOTTY
28993: fstat64(0, 0xEFFFEC70) = 0
28993: read(0, " d o m a i n\t e s s e x".., 8192) = 96
28993: read(0, 0x0009A9EC, 8192) = 0
28993: llseek(0, 0, SEEK_CUR) = 96
28993: close(0) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE9D8) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE710) = 0
28993: so_socket(2, 1, 0, "", 1) = 0
28993: sendto(0, "\00101\0\001\0\0\0\0\0\0".., 49, 0, 0x00090060, 16) = 49
28993: poll(0xEFFFC798, 1, 6000) = 1
28993: recv(0, "\0018583\001\0\0\001\0\0".., 1024, 0) = 110
28993: close(0) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE9D8) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE710) = 0
28993: so_socket(2, 1, 0, "", 1) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090060, 16) = 49
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: Received signal #16, SIGUSR1, in poll() [caught]
28993: siginfo: SIGUSR1 pid=29005 uid=0
28993: poll(0xEFFFC798, 1, 6000) Err#91 ERESTART
28993: time() = 930069536
28993: open("/var/spool/exim/logs/processlog", O_WRONLY|O_APPEND) Err#2 ENOENT
28993: open("/var/spool/exim/logs/processlog", O_WRONLY|O_APPEND|O_CREAT, 0640) = 4
28993: getuid() = 20467 [20467]
28993: chmod("/var/spool/exim/logs/processlog", 0640) = 0
28993: write(4, " 1 9 9 9 - 0 6 - 2 2 1".., 90) = 90
28993: close(4) = 0
28993: sigaction(SIGUSR1, 0xEFFFC288, 0x00000000) = 0
28993: setcontext(0xEFFFC468)
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090070, 16) = 49
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: poll(0xEFFFC798, 1, 6000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090080, 16) = 49
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: poll(0xEFFFC798, 1, 6000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090060, 16) = 49
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090070, 16) = 49
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090080, 16) = 49
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090060, 16) = 49
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090070, 16) = 49
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090080, 16) = 49
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00201\0\001\0\0\0\0\0\0".., 49, 0, 0x00090060, 16) = 49
28993: poll(0xEFFFC798, 1, 16000) (sleeping...)
28993: poll(0xEFFFC798, 1, 16000) = 1
28993: recv(0, "\0028182\001\0\0\0\0\0\0".., 1024, 0) = 49
28993: close(0) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE9D8) = 0
28993: stat("/etc/resolv.conf", 0xEFFFE710) = 0
28993: so_socket(2, 1, 0, "", 1) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090060, 16) = 47
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: poll(0xEFFFC798, 1, 6000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090070, 16) = 47
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: poll(0xEFFFC798, 1, 6000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090080, 16) = 47
28993: poll(0xEFFFC798, 1, 6000) (sleeping...)
28993: poll(0xEFFFC798, 1, 6000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090060, 16) = 47
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090070, 16) = 47
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090080, 16) = 47
28993: poll(0xEFFFC798, 1, 4000) (sleeping...)
28993: poll(0xEFFFC798, 1, 4000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090060, 16) = 47
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090070, 16) = 47
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090080, 16) = 47
28993: poll(0xEFFFC798, 1, 8000) (sleeping...)
28993: poll(0xEFFFC798, 1, 8000) = 0
28993: sendto(0, "\00301\0\001\0\0\0\0\0\0".., 47, 0, 0x00090060, 16) = 47
28993: poll(0xEFFFC798, 1, 16000) = 1
28993: recv(0, "\0038182\001\0\0\0\0\0\0".., 1024, 0) = 47
28993: close(0) = 0
[snipped - PID 28993 now gets its skates on an processes the message ]
--
*** Exim information can be found at
http://www.exim.org/ ***