--On Tuesday, March 20, 2012 2:16 PM +0000 [email protected] wrote: > [email protected] wrote: >> [email protected] wrote: >>> Full_Name: Quanah Gibson-Mount >>> Version: 2.4.30 >>> OS: Linux 2.6 >>> URL: ftp://ftp.openldap.org/incoming/ >>> Submission from: (NULL) (75.108.184.39) >>> >>> >>> If you create a script to add& delete the same 50,000 users, and then >>> re-run that script multiple times, the MDB database on disk continues >>> to grow, despite the fact that we are only adding and deleting the same >>> data repeatedly. There should be zero growth to the database. >>> >>> Instead, the data.mdb file went from 108MB in size to over 1.2GB after >>> 5-6 runs. Time to add/delete all the users went from 3 minutes 32 >>> seconds on the first run to over 90 minutes on the final run (5th or >>> 6th, I lost count). >> >> At present, MDB is working as intended. In your test a number of overflow >> pages are being used. Currently libmdb always allocates overflow pages >> from new space, because it's not smart enough to search the free list for >> contiguous pages. Can treat this ITS as an enhancement request for that >> purpose, but this is not a new issue nor is it unexpected in the current >> version of MDB. >> > Hm, I take this back. The overflow pages are not enough to account for > the difference. Still looking.
If this were truly the expected behavior, it would make using back-mdb with delta-syncrepl useless, as the accesslog would simply grow without bound. ;) Even back-bdb/hdb don't do that. While the DB will never be smaller than the maximum size ever reached without reloading, it won't unnecessarily grow past that either. :P --Quanah -- Quanah Gibson-Mount Sr. Member of Technical Staff Zimbra, Inc A Division of VMware, Inc. -------------------- Zimbra :: the leader in open source messaging and collaboration
