Summary: Directory Server hangs when running VLV search and update operations
simultaneously.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183222
There was another deadlock case between delete and vlv search...
------- Additional Comments From nhosoi(a)redhat.com 2006-12-07 13:47 EST -------
Created an attachment (id=143078)
--> (
https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=143078&action=...)
cvs diff vlv.c
File:
back-ldbm/vlv.c
Problem description:
There was another source of deadlock.
vlv_build_candidate_list creates db cursor in it. The current code locks the
vlvSearchList, calls vlv_build_candidate_list, then unlock it after the
function returns. Creating db cursor should not be inside of the vlvSearchList
lock.
Changes:
Before creating db cursor, unlock vlvSearchList. It should be safe since there
is no chance to traverse the vlvSearchList.