Community use on Centos is running 389-ds-base-1.3.3.1-16.el7_1.x86_64
When trimming the retroCL, it deletes an entry. Then retrieve the entry from the cache (no creation of tombstone) to remove it from the cache. Apparently if the entry cachen is small, it can fail to retrieve it and not testing this special condition
The crash occurs:
{{{ Thread 1 (Thread 0x7f4edf9cb700 (LWP 27506)):
}}}
The problem could be trigger by small cn=changelog entry cache
{{{ [25/Jun/2015:15:04:33 +0200] - 389-Directory/1.3.3.1 B2015.118.1941 starting up [25/Jun/2015:15:04:35 +0200] - WARNING -- Minimum cache size is 512000 -- rounding up [25/Jun/2015:15:04:36 +0200] - WARNING -- Minimum cache size is 512000 -- rounding up [25/Jun/2015:15:04:36 +0200] - WARNING -- Minimum cache size is 512000 -- rounding up [25/Jun/2015:15:04:36 +0200] - WARNING -- Minimum cache size is 512000 -- rounding up [25/Jun/2015:15:04:37 +0200] - WARNING: changelog: entry cache size 512000B is less than db size 36683776B; We recommend to increase the entry cache size nsslapd-cachememsize. [25/Jun/2015:15:04:37 +0200] - I'm resizing my cache now...cache was 3689347 and is now 2951477 }}}
The bug could be at https://git.fedorahosted.org/cgit/389/ds.git/tree/ldap/servers/slapd/back-ldbm/ldbm_delete.c#n1264. If '!create_tombstone_entry' (that is the case for cn=changelog), 'e' was updated and so could be NULL.
attachment stacktrace.27492
attachment stacktrace.27553.zip
attachment stacktrace.27615.zip
attachment 0001-Ticket-48206-Crash-during-retro-changelog-trimming.patch
Looks good.
Does your fix need to be backported to the older version, too?
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1244926
29043c5..2a8a8c8 master -> master commit 2a8a8c8ced5849dada34ab28d79e87dd3636e413 Author: Mark Reynolds mreynolds@redhat.com Date: Mon Jul 20 14:22:05 2015 -0400
0e31d81..6d43988 389-ds-base-1.3.4 -> 389-ds-base-1.3.4 commit 6d439887b99da557e8d7bc0c611d9afa909fdce7
c81f40a..1cde230 389-ds-base-1.3.3 -> 389-ds-base-1.3.3 commit 1cde230fc97b87b37e8fe78028d07c2c58143bdd
64b54d4..21a1196 389-ds-base-1.3.2 -> 389-ds-base-1.3.2 commit 21a1196113d2ed2f35a79a84ad38b8962d4a5f84
35f75ce..95a7fbd 389-ds-base-1.3.1 -> 389-ds-base-1.3.1 commit 95a7fbdc2103d5c5cacb51fb2dc06101f20b76d3
8173360..f5552bf 389-ds-base-1.2.11 -> 389-ds-base-1.2.11 commit f5552bfea4f20db3206fdf48770e86a315c9d3be
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1244970
Metadata Update from @tbordaz: - Issue assigned to mreynolds - Issue set to the milestone: 1.3.4.3
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/1537
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)