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

Re: commit: ldap/servers/slapd connection.c

--On Friday, January 14, 2005 8:04 AM -0800 Howard Chu <hyc@symas.com> wrote:

back-ldbm in HEAD appears to be rather unstable at the moment, and I'm
afraid that my changes in connection management are part of the problem.
I notice that if I turn the debug level up high, test002 fails. Looking
at the slapd.1.log, it appears that Add operations are still in progress
when the final ldapsearch is done to retrieve the full database contents.
This is really puzzling, it means that the ldapadd command exited
successfully already, but the operations it submitted hadn't completed
yet. With lower debug levels, the Adds complete quickly enough to finish
before the ldapsearch finishes. Otherwise, one to three entries from the
tail of the Add are missing from the search result.

This also seems to be causing test008 to fail. Also in test008, there is
garbage text appearing in the LDAP error text fields. I don't know what
it's leftover from...

The big problem here seems to be that back-ldbm calls send_ldap_result()
to tell the client its status before it actually finishes its internal
operations. So it can be in the middle of completing a cache update by
the time a new request arrives; this seems to explain what I'm seeing in
test002 at least.

Since LDBM is kind of deprecated in favor of BDB, etc, at what point does OL simply drop LDBM? Would it in particular simplify things?


Quanah Gibson-Mount
Principal Software Developer
ITSS/Shared Services
Stanford University
GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html

"These censorship operations against schools and libraries are stronger
than ever in the present religio-political climate. They often focus on
fantasy and sf books, which foster that deadly enemy to bigotry and blind
faith, the imagination." -- Ursula K. Le Guin