mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-26 01:29:59 -05:00
ITS#6484 - cache DB needs to release its own entries
This commit is contained in:
parent
0394c805ab
commit
f992b66f05
1 changed files with 15 additions and 0 deletions
|
|
@ -5219,6 +5219,20 @@ pcache_op_extended( Operation *op, SlapReply *rs )
|
|||
return SLAP_CB_CONTINUE;
|
||||
}
|
||||
|
||||
static int
|
||||
pcache_entry_release( Operation *op, Entry *e, int rw )
|
||||
{
|
||||
slap_overinst *on = (slap_overinst *)op->o_bd->bd_info;
|
||||
cache_manager *cm = on->on_bi.bi_private;
|
||||
BackendDB *db = op->o_bd;
|
||||
int rc;
|
||||
|
||||
op->o_bd = &cm->db;
|
||||
rc = be_entry_release_rw( op, e, rw );
|
||||
op->o_bd = db;
|
||||
return rc;
|
||||
}
|
||||
|
||||
#ifdef PCACHE_MONITOR
|
||||
|
||||
static int
|
||||
|
|
@ -5605,6 +5619,7 @@ pcache_initialize()
|
|||
#endif /* PCACHE_CONTROL_PRIVDB */
|
||||
pcache.on_bi.bi_extended = pcache_op_extended;
|
||||
|
||||
pcache.on_bi.bi_entry_release_rw = pcache_entry_release;
|
||||
pcache.on_bi.bi_chk_controls = pcache_chk_controls;
|
||||
|
||||
pcache.on_bi.bi_cf_ocs = pcocs;
|
||||
|
|
|
|||
Loading…
Reference in a new issue