Steps: 1) setup up 2 way MMR 2) make sure the entry cache is full, so that search requests must evict old entries from the cache to make room for new entries 3) generate an ADD load against one of the masters 4) repeatedly search for (objectclass=nsTombstone) from the base suffix
Make sure there are a lot of tombstone entries that are not reaped.
Looks like problem is not related to tombston searches. Customer had two more crashes, the pattern is one search thread trying to add an entry to the cache, and another thread having performed an add and waiting to return the parent entry to the cache
Analysis of the core files showed the same pattern for three crashes,
the conditions for the crash seem to be: - one thread adding an entry in parallel to a search thread which needs to remove entries from the cache - the entry added and the entry to be removed from the cache are in the same slot of the dn hashtable - the entry added has a "different" parent part in the dn than the dn of teh parententry in the cache eg ou=mmo vs ou=MMO and will be replaced
Replacing the sdn calls slapi_done_sdn() before setting the new sdn, so there is a small interval where getting the dn returns NULL
attachment 0001-Ticket-47577-crash-when-removing-entries-from-cache.patch
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1026931
no crash seen with patch
a572cb2..85a99e9 389-ds-base-1.2.11 -> 389-ds-base-1.2.11 commit 85a99e9 Author: Ludwig Krispenz lkrispen@redhat.com Date: Tue Nov 5 16:58:44 2013 +0100 9d7fab3..ecc210f 389-ds-base-1.3.0 -> 389-ds-base-1.3.0 commit ecc210f Author: Ludwig Krispenz lkrispen@redhat.com Date: Tue Nov 5 16:58:44 2013 +0100 05950d0..00b19f3 389-ds-base-1.3.1 -> 389-ds-base-1.3.1 commit 00b19f3 Author: Ludwig Krispenz lkrispen@redhat.com Date: Tue Nov 5 16:58:44 2013 +0100 144869f..1056a62 389-ds-base-1.3.2 -> 389-ds-base-1.3.2 commit 1056a62 Author: Ludwig Krispenz lkrispen@redhat.com Date: Tue Nov 5 16:58:44 2013 +0100 8d398a5..7272dbd master -> master commit 7272dbd Author: Ludwig Krispenz lkrispen@redhat.com Date: Tue Nov 5 16:58:44 2013 +0100
Metadata Update from @lkrispen: - Issue assigned to lkrispen - Issue set to the milestone: 1.2.11.25
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/914
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Fixed)
Login to comment on this ticket.