[Pkg-openldap-devel] Bug#777681: slapd deleting attributes fills mdb backend

GALAMBOS Daniel dancsa at dancsa.hu
Wed Feb 11 12:43:54 UTC 2015


Package: slapd
Version: 2.4.31+really2.4.40-3~bpo70+1

There is an openldap instance with mdb backend. Modifying 40k entry,
more specifically delete an attribute from each entry causes the MDB
database to be filled up.

Freshly created backend database, after slapdadd the data.mdb is around
250 MB.
olcDbMaxSize: 1024000000 (1 GiB)
While running the ldapmodify, after some time
"ldap_modify: Other (e.g., implementation specific) error (80)
        additional info: commit failed
"
error produced.  After restarting slapd
"ldap_modify: Other (e.g., implementation specific) error (80)
        additional info: entry update failed
"
data.mdb became 977 MB

slapd log the following to syslog:

Feb 11 11:53:11 yoshida slapd[5115]: conn=1004 op=9140: attribute
"iigService" index delete failure
Feb 11 11:53:11 yoshida slapd[5115]: => mdb_idl_delete_key: c_del id
failed: MDB_MAP_FULL: Environment mapsize limit reached (-30792)
Feb 11 11:53:11 yoshida slapd[5115]: conn=1004 op=9141: attribute
"iigService" index delete failure
Feb 11 11:53:19 yoshida slapd[5115]: mdb_id2entry_put: mdb_put failed:
MDB_MAP_FULL: Environment mapsize limit reached(-30792) "uid=.....,dc=hu"
Feb 11 11:53:25 yoshida slapd[5115]: mdb_id2entry_put: mdb_put failed:
MDB_MAP_FULL: Environment mapsize limit reached(-30792) "uid=.....,dc=hu"
Feb 11 11:53:34 yoshida slapd[5115]: mdb_id2entry_put: mdb_put failed:
MDB_MAP_FULL: Environment mapsize limit reached(-30792) "uid=......,dc=hu"
Feb 11 11:53:50 yoshida slapd[5115]: mdb_id2entry_put: mdb_put failed:
MDB_MAP_FULL: Environment mapsize limit reached(-30792) "uid=.......,dc=hu"
----

mdb_stat (rebuilt from jessie's source package on wheezy) shows
mdb_stat -f /var/lib/ldap/mdb1
Freelist Status
  Tree depth: 3
  Branch pages: 5
  Leaf pages: 464
  Overflow pages: 0
  Entries: 7058
  Free pages: 192324
Status of Main DB
  Tree depth: 1
  Branch pages: 0
  Leaf pages: 1
  Overflow pages: 0
  Entries: 30
-----------

As mdb_stat states 750 MB of the 1GB is free, so I believe this is not
the expected behavior.
Any idea?


Galambos Daniel / Dancsa



More information about the Pkg-openldap-devel mailing list