]> git.sur5r.net Git - openldap/commitdiff
Do deadlock detection on any conflict, instead of in a separate thread
authorHoward Chu <hyc@openldap.org>
Fri, 18 Jan 2002 13:28:07 +0000 (13:28 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 18 Jan 2002 13:28:07 +0000 (13:28 +0000)
servers/slapd/back-bdb/init.c

index 844575409e727b7609160f3772ec9e7382d0b0d0..d71e32933431281118b4a56c69dc28c6125ade99 100644 (file)
@@ -92,7 +92,7 @@ bdb_db_init( BackendDB *be )
        return 0;
 }
 
-#ifndef NO_THREADS
+#if 0 /* ifndef NO_THREADS */
 static void *lock_detect_task( void *arg )
 {
        struct bdb_info *bdb = (struct bdb_info *) arg;
@@ -171,6 +171,9 @@ bdb_db_open( BackendDB *be )
 
        bdb->bi_dbenv->set_errpfx( bdb->bi_dbenv, be->be_suffix[0]->bv_val );
        bdb->bi_dbenv->set_errcall( bdb->bi_dbenv, bdb_errcall );
+#ifndef NO_THREADS
+       bdb->bi_dbenv->set_lk_detect( bdb->bi_dbenv, bdb->bi_lock_detect );
+#endif
 
 #ifdef BDB_SUBDIRS
        {
@@ -309,7 +312,7 @@ bdb_db_open( BackendDB *be )
        rc = bdb_build_tree( be );
 #endif
 
-#ifndef NO_THREADS
+#if 0 /* ifndef NO_THREADS */
        if( bdb->bi_lock_detect != DB_LOCK_NORUN ) {
                /* listener as a separate THREAD */
                rc = ldap_pvt_thread_create( &bdb->bi_lock_detect_tid,