Please review : [Bug 592397] Upgrade tool dn2rdn: it does not clean up the entrydn in id2entry
by Noriko Hosoi
https://bugzilla.redhat.com/show_bug.cgi?id=592397
https://bugzilla.redhat.com/attachment.cgi?id=454233&action=diff
https://bugzilla.redhat.com/attachment.cgi?id=454233&action=edit
Description: If entries created by the 389 v1.2.5 or older,
the primary db (id2entry.db4) contains "entrydn:<normalized dn>".
Upgrading from the old version to v1.2.6 keeps the entrydn
attribute type and its value even though v1.2.6 is not supposed
to store the entrydn in the database.
1) This patch drops the entrydn attribute and value in upgrading
the db.
2) If an ldif file contains entrydn attribute type and value,
import (ldif2db[.pl]) ignores it.
3) A leak was found in the export (db2ldif[.pl]) which is fixed.
4) When nsslapd-subtree-rename-switch configuration attribute has
the value "on", entrydn is not used nor created. But the
server accepted reindexing entrydn request and generated an
entrydn index file. This patch rejects it.
5) Entry and dn cache clear calls (cache_clear) are added to
dblayer_instance_close in "#if defined(_USE_VALGRIND)", which
is not defined. To enable the code, the server needs to be
rebuilt with defining the macro. This is purely for debugging.
Files:
ldap/servers/slapd/back-ldbm/dblayer.c
ldap/servers/slapd/back-ldbm/id2entry.c
ldap/servers/slapd/back-ldbm/import-threads.c
ldap/servers/slapd/back-ldbm/ldbm_entryrdn.c
ldap/servers/slapd/back-ldbm/ldif2ldbm.c
ldap/servers/slapd/entry.c
ldap/servers/slapd/slapi-plugin.h
13 years, 6 months