I don't see anything directly pertinent in the list archives so I thought
I'd share my experience for posterity. Running OpenLDAP 2.2.30 on Solaris
9 with Berkeley DB 4.3.29, I would regularly see cases where indexes would
"forget" an entry upon modification, even if the index in question wasn't
for an attribute being modified. Interestingly, applying the same
modifications to an identical directory would produce identical
corruption, but other than that it was totally unpredictable.
Anyway, I finally found a correlation with the "lastmod" configuration
option which I had turned off. Setting "lastmod on" seems to have solved
the problem.
Anyway, I hope this helps someone out there who fails to heed the
obligatory "upgrade to 2.3.x" warning.