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

Re: (ITS#4088) hdb deadlock between syncrepl/slapcat



hyc@symas.com wrote:
> Aaron Richton wrote:
>   
>>> Unfortunately BDB doesn't record process or thread IDs with locker IDs
>>> so there's no quick way to find the culprit.
>>>     
>>>       
>> Well, I was able to repro this:
>>
>> 0. pkill slapd
>> 1. rm [dataDir]/*db*
>> 2. slapd
>> [...now syncrepl has a lot of work to do...]
>> 3. while sleep 2;slapcat;done &
>>
>> I can think of no rationale why/how one of the slapcats would have
>> experienced any sort of abnormal termination.
>>
>> Does LDAP_DEVEL/-d -1/etc. have sufficient information on lock ids to
>> track this down? Alternately, I can throw a debugger watchpoint, if you
>> think that might help.
>>   
>>     
I've committed a potential fix to HEAD. It makes sure that slapcat won't 
have two id2entry cursors open at once. However, it will have an 
id2entry and a dn2id cursor both open at once, and there's no avoiding 
that. Please let me know if this behaves any better for you.

-- 
  -- Howard Chu
  Chief Architect, Symas Corp.  http://www.symas.com
  Director, Highland Sun        http://highlandsun.com/hyc
  OpenLDAP Core Team            http://www.openldap.org/project/