> On Wed, Nov 20, 2002 at 03:16:55PM +0000, F�bio Gomes wrote: >> Taymour A. El Erian wrote: >> >> >Hi, >> > >> > I know this has been discussed earlier. I can not restart qmail, >> > if I >> >do restart it qmail-send doesn't stop and then you get qmail-todo >> >exiting ASAP in the qmail-send log file and I have to kill qmail-send >> > then start it again. Is there a solution for this problem. >> >> The above occurs with my instalation also. I assume this is happening >> because qmail-remote needs to quit the connection with the remote host >> before exit. But some email host outside there are really slow and >> quiting the transaction or even close the connection due timeout >> (/var/qmail/control/timeoutremote) takes a little time. qmail starts >> to send messages as supposed when it close the last 'turtle' >> connection. >> > > The interesting thing is if qmail-todo is still running or not. >
I am also having this problem, and i asked this a long time ago. You might have missed that out. qmail-todo becomes zombie when i stop qmail. i'm using 20020801 >> > >> >Another point, My LDAP server NIC got toasted so LDAP was done qmail >> >bounces messages directly to senders saying no mailbox here by that >> >name, shouldn't the messages be kept in the queue if the ldap times >> >out. >> > >> >> Again this have happened with me. Ok, if I shutdown my LDAP server the >> messages will wait in the queue until the LDAP becomes available >> again. But, if in any moment, the LDAP server becomes slow enough >> (due lack of index or high cpu usage), the search timeout is reached >> and the sender recieve a bounce just as described above. >> >> >> PS.: I have read Claudio's reply for this topic, but I thought this >> could reinforce the case. >> > > OK, had a deep look at the timeout code and ... puff found the bug: > diff -u -r1.27 qldap-ldaplib.c > --- qldap-ldaplib.c 27 Sep 2002 09:18:14 -0000 1.27 > +++ qldap-ldaplib.c 20 Nov 2002 18:04:25 -0000 > @@ -330,9 +330,10 @@ > case LDAP_TIMELIMIT_EXCEEDED: > case LDAP_BUSY: > qldap_errno = LDAP_SEARCH_TIMEOUT; > - > + break; > default: > qldap_errno = LDAP_SEARCH; > + break; > } > > That should be pretty self explaining. > > -- > :wq Claudio
