[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: HAVE_BERKELEY_DB_THREAD (ITS#1176)



At 09:23 AM 5/28/01, bostic@sleepycat.com wrote:
>> At 08:48 AM 5/28/01, bostic@sleepycat.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).

Kurt