[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#3671) disconnecting a syncrepl consumer deadlocks the provider



Ralf Haferkamp wrote:

>On Thursday 28 April 2005 15:27, hyc@symas.com wrote:
>  
>
>>>Well I have to correct myself a bit it doesn't really crash, but
>>>runs into an assertion:
>>>
>>>lt-slapd: connection.c:634: connection_destroy: Assertion
>>>`c->c_writewaiter == 0' failed.
>>>      
>>>
>>This is puzzling, since connection_closing() signals the writer
>>condition, but your stack trace shows that the writer is still in the
>>condition wait. I don't have any good ideas here at the moment.
>>    
>>
>Might that be because that the thread that executes connection_closing() 
>doesn't release the c_mutex after signaling the condition (c_write_cv)? 
>If I understand the pthread_cond_* docs correctly the writer is then 
>waiting to get the c_mutex, but never gets it.
>
Yep, that was it. This is now fixed.

-- 
  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support