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


I suggest we move this thread to openldap-devel mailing list.


At 10:10 AM 5/27/01, bostic@sleepycat.com wrote:
>Full_Name: Keith Bostic
>Version: unknown.
>URL: ftp://ftp.openldap.org/incoming/
>Submission from: (NULL) (
>Hi, I'm Keith Bostic and I work for Sleepycat Software (the folks that
>develop/support Berkeley DB).
>We've been approached by an organization that's seeing corruption in
>its databases and I'm trying to understand how OpenLdap uses Berkeley
>Basically, I'm concerned about the define HAVE_BERKELEY_DB_THREAD.
>(The only OpenLdap code I've reviewed is ldbm.c.)
>It seems to me that if HAVE_BERKELEY_DB_THREAD is defined, multiple
>OpenLdap threads can access Berkeley DB databases concurrently, and,
>there is no provision to restrict this access to read-only threads.
>This concerns me; usually, if multiple threads of control are in the
>database code, and, one of those threads is updating the database,
>there can be deadlocks which require transactional support to resolve.
>Can someone please tell me:
>+ If HAVE_BERKELEY_DB_THREAD is defined, can multiple OpenLdap threads
>  of control access the Berkeley DB API concurrently?
>+ If so, can one of those multiple threads be modifying the database?
>  Can two of those multiple threads be modifying the database?
>Keith Bostic
>Sleepycat Software Inc.         bostic@sleepycat.com
>118 Tower Rd.                   +1-781-259-3139
>Lincoln, MA 01773               http://www.sleepycat.com