From 180e1d526991b950ba280162a44be9d062bccba9 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Mon, 3 Dec 2001 14:04:06 +0000 Subject: [PATCH] Don't maintain a DN_SUBTREE index for the backend suffix, just return BDB_IDL_ALL. This has a huge impact on I/O and txn logs. --- servers/slapd/back-bdb/dn2id.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/servers/slapd/back-bdb/dn2id.c b/servers/slapd/back-bdb/dn2id.c index 0e73b95738..d9a89325be 100644 --- a/servers/slapd/back-bdb/dn2id.c +++ b/servers/slapd/back-bdb/dn2id.c @@ -70,7 +70,7 @@ bdb_dn2id_add( } { - char **subtree = dn_subtree( NULL, dn ); + char **subtree = dn_subtree( be, dn ); if( subtree != NULL ) { int i; @@ -152,7 +152,7 @@ bdb_dn2id_delete( } { - char **subtree = dn_subtree( NULL, dn ); + char **subtree = dn_subtree( be, dn ); if( subtree != NULL ) { int i; @@ -363,6 +363,12 @@ bdb_dn2idl( Debug( LDAP_DEBUG_TRACE, "=> bdb_dn2idl( \"%s\" )\n", dn, 0, 0 ); + if (prefix == DN_SUBTREE_PREFIX && be_issuffix(be, dn)) + { + BDB_IDL_ALL(bdb, ids); + return 0; + } + DBTzero( &key ); key.size = strlen( dn ) + 2; key.data = ch_malloc( key.size ); -- 2.39.5