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

Re: Modify performance improvement for back-ldbm and back-bdb (ITS#1526)

> Full_Name: Gertjan van Wingerde
> Version: devel-snapshot & 2.0.19
> OS: Linux/Solaris/True64
> URL: ftp://ftp.openldap.org/incoming/Gertjan_van_Wingerde_openldap-snapshot-12012002-1.diff
> Submission from: (NULL) (
> I have improved the modify performance of OpenLDAP by only reindexing
> attributes
> that are actually changed in the modify operation instead of all the attributes
> of
> an entry. This change improves the performance of a modify operation on a
> non-indexed
> attribute from about 4 modifications per second to about 38 modifications per
> second.
> If an indexed attribute is being modified, the results are a bit less dramatic,
> but
> still an improvement of about 200% is observed then.
> Note: The changes are only applicable to the LDBM backend and the BDB backend.
> As far
> as I can see no other backends can use this optimisation.

Your idea sounds definitely good; I'm not very comfortable with the 
fixed size array of index add/remove attrs.  This may require a little
reworking.  I understand the improvement can be significant, though.