[Date Prev][Date Next]
binary entry read/write
I've just committed some patches for back-bdb that use my new encode/decode
routines. These use around 1/10th the CPU time of the BER-based encoder. In
a profile of adding 1205 entries to an empty database, slapd calls
ber_memalloc 113172 times. Using the BER encoder it's 412183 times.
Performing 4 searches for all of those entries yields 1357115 memalloc's for
BER-based, and only 275025 for my encoder.
Another aspect of this patch is to cache AttributeDescriptions. Currently my
changes are in back-bdb/id2entry.c but I think it should be done globally
and moved up into slapd itself. I'll look into that some more. Should
probably move the bdb_encode/bdb_decode into slapd too, since back-bdb is
the only thing that uses the slapd entry_encode/entry_decode routines right
-- Howard Chu
Chief Architect, Symas Corp. Director, Highland Sun