Hi,
when I run slapindex with my mdb backend the data.mdb files grows and grows and when the
configured maxsize (100GB) is reached it stops with cannot allocate memory.
50505d1e => mdb_idl_insert_keys: c_put id failed: Cannot allocate memory (12)
50505d1e => mdb_tool_entry_reindex: txn_aborted! err=80
To test, I created a very basic config. See below.
Created a test ldif file with the LDIFGen.jar with 100000 DNs. The file is 110MB.
In the slapd.conf is only 1 index configured. uid with eq,sub.
When I load this file with slapadd the data.mdb file gets 268MB. (Without any configured
index 220MB)
When I then run a slapindex, the data.mdb grows to 20GB.
If I add 2 more attributes to index. data.mdb gets 36GB
index givenname eq,sub
index sn eq,sub
My question is, is this normal? Why does the data file get's so big with a slapindex
and not with a slapadd?
OpenLDAP version is 2.4.32 on CentOS6 64bit.
# cat /etc/openldap2.4/slapd.conf
include /usr/share/openldap2.4/schema/core.schema
include /usr/share/openldap2.4/schema/cosine.schema
include /usr/share/openldap2.4/schema/corba.schema
include /usr/share/openldap2.4/schema/inetorgperson.schema
include /usr/share/openldap2.4/schema/java.schema
include /usr/share/openldap2.4/schema/krb5-kdc.schema
include /usr/share/openldap2.4/schema/kerberosobject.schema
include /usr/share/openldap2.4/schema/misc.schema
include /usr/share/openldap2.4/schema/nis.schema
include /usr/share/openldap2.4/schema/openldap.schema
include /usr/share/openldap2.4/schema/autofs.schema
pidfile /var/run/ldap2.4/slapd.pid
argsfile /var/run/ldap2.4/slapd.args
modulepath /usr/lib64/oldap24/openldap2.4
moduleload back_monitor.la
moduleload accesslog.la
moduleload syncprov.la
moduleload auditlog.la
loglevel stats
serverID 40
ldap://ds71.ogilvy.com
database mdb
suffix "dc=ogilvy,dc=com"
rootdn "cn=manager,dc=ogilvy,dc=com"
rootpw secret
directory /var/lib/ldap2.4/ogilvy.com
limits dn.exact="cn=manager,dc=ogilvy,dc=com" time.soft=unlimited
time.hard=unlimited size.soft=unlimited size.hard=unlimited
sizelimit 90000
checkpoint 256 5
dbnosync
maxsize 104857600000
index uid eq,sub
monitoring on
database config
rootdn "cn=admin,cn=config"
rootpw secret
database monitor
rootdn cn=monitor
rootpw secret
--
Marco