Am Mittwoch 17 Dezember 2008 15:03:49 schrieb rhafer@suse.de:
This problem seems to be only present when using an empty suffix. I wasn't able to reproduce it with a non-empty suffix at least.
It seems to be a problem with the idlcache. After setting "idlcachesize" to 0 the problem went a way for me.
And yes, it seems to have been in the RE24 tree for a longer time already (2.4.12 was affected as well).
Digging a bit deeper into this, I found that only back-hdb is affected and that it is most probably a bug in hdb_dn2id_add(). It seems that after adding a new entry, hdb_dn2id_add() fails to correctly update the IDLs in the idl- cache for the entry's parent entries.
The following patch seems to fix the problem for me: --- dn2id.c 31 Oct 2008 23:23:59 -0000 1.137.2.13 +++ dn2id.c 17 Dec 2008 19:45:32 -0000 @@ -620,6 +620,11 @@ tmp[1] = eip->bei_id; bdb_idl_cache_add_id( bdb, db, &key, e->e_id ); } + if ( !op->o_bd->be_suffix[0].bv_len && eip) + { + tmp[1] = eip->bei_id; + bdb_idl_cache_add_id( bdb, db, &key, e->e_id ); + } } }
I suspect that hdb_dn2id_delete() has a similar issue.