brandon.hume@dal.ca wrote:
Full_Name: Brandon Hume Version: 2.4.31 OS: RHEL EL6.1, kernel 2.6.32-131.12.1.el6.x86_64 URL: http://den.bofh.ca/~hume/mdb_approx_indexfail.tar Submission from: (NULL) (2001:410:a010:2:223:aeff:fe74:400e)
An empty syncrepl consumer using mdb backend will suffer index generator failures when populating its database from the provider and using "approx" index options. The failure manifests in syslog (with olcLogLevel=Stats) as the following:
May 24 11:50:41 node2 slapd[25282]: null_callback : error code 0x50 May 24 11:50:41 node2 slapd[25282]: syncrepl_entry: rid=001 be_add $DN failed (80)
These problems don't seem to occur when populating the provider using slapadd. The problem only seems to manifest when the new entry arrives via syncrepl. Playing with gdb, it seems like indexer() ends up being called with { bv_len = 0, bv_val = "" } when indexing "givenName".
Thanks for the report, fixed now in git master. slapadd also failed for me, so it wasn't quite the same behavior you reported.
Could be because "givenName" on the troublesome entry is only one character?
A minimalist DIT and config are provided in the tarfile in the link. The two nodes are running in mirrormode, and I'm not sure if that makes a difference.
The config is invalid; you have used the same RIDs multiple times.