> 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



Reply via email to