I am experiencing intermittent failures to close the Berkeley database when running slapadd using quick mode on Windows. I have reproduced the problem using OpenLDAP 2.4.16, 2.4.15, and 2.3.42. I am using BDB 4.4.20 with all applicable patches. The problem only occurs when quick mode is used. I have not seen the problem on Linux systems. Here are the steps that (sometimes) reproduce the problem:
1. Start slapd to create initial database files: slapd -f slapd.conf -d -1
2. Stop slapd using CTRL-C.
3. Add initial data: slapadd -f slapd.conf -l initialData.ldif -q
When the problem occurs, slapadd displays the following error message:
C:\openldap>slapadd -f slapd.conf -l initialData.ldif -q Closing DB...
bdb_db_close: database "dc=Nortel,dc=com": alock_close failed
Here is the weird part - the problem is difficult to reproduce, unless you set your system clock to certain times on May 25, 2009. For example, I can reproduce the problem 100% of the time when I set my system clock to May 25, 2009 at 2:00 PM. When my system clock has other dates, the problem is very difficult to reproduce. In fact, if I switch my system clock back and forth between May 25, 2009 at 2:00 PM and May 26, 2009 at 2:00 PM while repeatedly running slapadd with quick mode (-q) and continue-on-error (-c), the problem always occurs on May 25 but never on May 26.
My slapd.conf and initialData.ldif are minimal:
C:\openldap>more slapd.conf
ucdata-path data
include core.schema
include cosine.schema
backend bdb
database bdb
suffix "dc=Nortel,dc=com"
directory data
C:\openldap>more initialData.ldif
dn: dc=Nortel,dc=com
objectclass: top
objectClass: organizationalUnit
objectclass: dcObject
ou: Nortel
dc: Nortel
Any help is appreciated.
Kyle Blaney