[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#7987) SIGSEGV in LMDB while adding ldap-entries
- To: openldap-its@OpenLDAP.org
- Subject: Re: (ITS#7987) SIGSEGV in LMDB while adding ldap-entries
- From: leo@yuriev.ru
- Date: Sun, 30 Nov 2014 20:51:07 +0000
- Auto-submitted: auto-generated (OpenLDAP-ITS)
Previously noted (2) and (3) was caused by following patch.
It is a trial from Howard Chu for workout on ITS#7968 ;)
Under a heavy load of add/delete it may induce "DN index delete failed"
in the mdb backend.
> Message-ID: <5440D299.60208@symas.com>
> Date: Fri, 17 Oct 2014 09:26:01 +0100
> From: Howard Chu <hyc@symas.com>
>
> Can you try this patch and followup again?
>
>> diff --git a/servers/slapd/overlays/syncprov.c
>> b/servers/slapd/overlays/syncprov.c
>> index e15020e..b54c83f 100644
>> --- a/servers/slapd/overlays/syncprov.c
>> +++ b/servers/slapd/overlays/syncprov.c
>> @@ -1306,11 +1306,12 @@ syncprov_matchops( Operation *op, opcookie
>> *opc, int saveit )
>> op2.o_hdr = &oh;
>> op2.o_extra = op->o_extra;
>> op2.o_callback = NULL;
>> - if (ss->s_flags & PS_FIX_FILTER) {
>> + if ((ss->s_flags & PS_FIX_FILTER)
>> + && op2.ors_filter->f_choice ==
>> LDAP_FILTER_AND) {
>> /* Skip the AND/GE clause that we
>> stuck on in front. We
>> would lose deletes/mods that
>> happen during the refresh
>> phase otherwise (ITS#6555) */
>> - op2.ors_filter =
>> ss->s_op->ors_filter->f_and->f_next;
>> + op2.ors_filter =
>> op2.ors_filter->f_and->f_next;
>> }
>> ldap_pvt_thread_mutex_unlock( &ss->s_mutex );
>> rc = test_filter( &op2, e, op2.ors_filter );