From 22f895a4bb564af4977ad3af3d7d566f52f5ea04 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sat, 10 Jul 2004 04:48:07 +0000 Subject: [PATCH] Minor cleanup --- servers/slapd/back-bdb/cache.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/servers/slapd/back-bdb/cache.c b/servers/slapd/back-bdb/cache.c index 90f49d83f9..484efe3094 100644 --- a/servers/slapd/back-bdb/cache.c +++ b/servers/slapd/back-bdb/cache.c @@ -679,10 +679,10 @@ load1: if ( !(*eip)->bei_e && !((*eip)->bei_state & CACHE_ENTRY_LOADING)) { /* We don't wrap entire read operations in txn's, but * we need our cache entry lock and any DB page locks * to be associated, in order for deadlock detection - * to work properly. So we use a long-lived per-thread - * txn for this step. + * to work properly. So if we need to read from the DB, + * we use a long-lived per-thread txn for this step. */ - if ( !tid ) { + if ( !ep && !tid ) { rc = bdb_txn_get( op, bdb->bi_dbenv, <id ); if ( ltid ) locker2 = TXN_ID( ltid ); @@ -714,7 +714,7 @@ load1: if ( !(*eip)->bei_e && !((*eip)->bei_state & CACHE_ENTRY_LOADING)) { /* Otherwise, release the lock. */ bdb_cache_entry_db_unlock( bdb->bi_dbenv, lock ); } - if ( !tid ) { + if ( locker2 != locker ) { /* If we're using the per-thread txn, release all * of its page locks now. */ -- 2.39.5