[Date Prev][Date Next] [Chronological] [Thread] [Top]

lastmod and index corruption



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.

I don't plan to speculate about what's going on here and I doubt it's
worth pursuing a patch at this point in the 2.2.x saga, but if you have a
similar setup with irritatingly arbitrary index corruption, you might try
turning lastmod back on.

Other config info:

DB_CONFIG
---------
using shared memory for db cache
db cache big enough to hold entire directory
mmapsize big enough to hold entire directory
no extra flags set

slapd.conf
----------
gentlehup on
idletimeout 10
sizelimit 50
timelimit 10
allow bind_v2
backend         bdb
database        bdb
mode            0600
cachesize       80000 (big enough for entire directory)
idlcachesize    300000
checkpoint      1000    5
lastmod         off (changed to on)
heavy indexing

Incidentally, gentlehup seems to be problematic, too, but I won't go into
that...

Anyway, I hope this helps someone out there who fails to heed the
obligatory "upgrade to 2.3.x" warning.

-- 
Eric Irrgang - UT Austin ITS Unix Systems - (512)475-9342