[Date Prev][Date Next]
Re: HAVE_BERKELEY_DB_THREAD (ITS#1176)
At 09:23 AM 5/28/01, firstname.lastname@example.org wrote:
>> At 08:48 AM 5/28/01, email@example.com wrote:
>>>Since OpenLdap doesn't support transactions yet, my guess is
>>>that it shouldn't be permitting multiple threads of control to
>>>access the database, as long as there's at least one writer
>>>thread. Under high levels of concurrency, when deadlock can
>>>occur, the database may become corrupted.
>> Can DB deadlock occur when no DB write cursors are used?
>Yes; page splits can result in deadlock for even non-cursor
>operations. (This situation has improved in the upcoming
>Berkeley DB 3.3.XX release, but in general, applications that
>allow more than a single-thread of control into the database
>should be prepared to handle deadlock.)
For now, I'll just enable the ldbm_big_mutex locking for
Berkeley DB 2 and 3 (as we do for Berkeley DB 1 and GDBM).