#47577 1.2.11.29 crash when removing entries from cache
Closed: wontfix Opened by rmeggins.

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

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 85a99e924e16ddc69b8b2cca97550d66f4ea11e0
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 ecc210f3ca25528f5f718680409ded0021d5604c
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 00b19f3b4af662341c72fa6cfd60b5e136f1428f
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 1056a6282f246a9c396b8052d726005fe8189512
Author: Ludwig Krispenz lkrispen@redhat.com
Date: Tue Nov 5 16:58:44 2013 +0100
8d398a5..7272dbd master -> master
commit 7272dbda7f43974eed003cbcfc0ddd57fe433687
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.

Thank you for understanding. We apologize for all inconvenience.

Metadata Update from @spichugi:
- Issue close_status updated to: wontfix (was: Fixed)

Metadata