]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/proto-bdb.h
More hdb optimizing - cache subtree IDLs, not just onelevels
[openldap] / servers / slapd / back-bdb / proto-bdb.h
index 75f2f991bb85b6eb7666462436bbf4e36451fdda..a9a3b831560eac0568e5e8d3f563730389fbb27e 100644 (file)
@@ -217,6 +217,8 @@ BI_entry_get_rw bdb_entry_get;
 #define bdb_idl_cache_get                      BDB_SYMBOL(idl_cache_get)
 #define bdb_idl_cache_put                      BDB_SYMBOL(idl_cache_put)
 #define bdb_idl_cache_del                      BDB_SYMBOL(idl_cache_del)
+#define bdb_idl_cache_add_id           BDB_SYMBOL(idl_cache_add_id)
+#define bdb_idl_cache_del_id           BDB_SYMBOL(idl_cache_del_id)
 
 int bdb_idl_cache_get(
        struct bdb_info *bdb,
@@ -238,6 +240,20 @@ bdb_idl_cache_del(
        DB              *db,
        DBT             *key );
 
+void
+bdb_idl_cache_add_id(
+       struct bdb_info *bdb,
+       DB              *db,
+       DBT             *key,
+       ID              id );
+
+void
+bdb_idl_cache_del_id(
+       struct bdb_info *bdb,
+       DB              *db,
+       DBT             *key,
+       ID              id );
+
 #define bdb_idl_first                          BDB_SYMBOL(idl_first)
 #define bdb_idl_next                           BDB_SYMBOL(idl_next)
 #define bdb_idl_search                         BDB_SYMBOL(idl_search)
@@ -245,7 +261,7 @@ bdb_idl_cache_del(
 #define bdb_idl_intersection           BDB_SYMBOL(idl_intersection)
 #define bdb_idl_union                          BDB_SYMBOL(idl_union)
 #define bdb_idl_sort                           BDB_SYMBOL(idl_sort)
-#define bdb_idl_merge                          BDB_SYMBOL(idl_merge)
+#define bdb_idl_append                         BDB_SYMBOL(idl_append)
 #define bdb_idl_append_one                     BDB_SYMBOL(idl_append_one)
 
 #define bdb_idl_fetch_key                      BDB_SYMBOL(idl_fetch_key)
@@ -292,7 +308,7 @@ bdb_idl_union(
 ID bdb_idl_first( ID *ids, ID *cursor );
 ID bdb_idl_next( ID *ids, ID *cursor );
 
-void bdb_idl_sort( ID *ids );
+void bdb_idl_sort( ID *ids, ID *tmp );
 int bdb_idl_append( ID *a, ID *b );
 int bdb_idl_append_one( ID *ids, ID id );