[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#4420) Hanging CLOSE_WAIT connections in ldap-backend
On Fri, 2006-03-03 at 10:20 +0000, hyc@symas.com wrote:
> I believe the code now in back-ldap is broken. If you do a "grep
> do_retry" in the back-ldap source you'll note that some of the modules
> are testing for LDAP_UNAVAILABLE and some are testing for
> LDAP_SERVER_DOWN. This inconsistency points to another logic problem -
> the LDAP_UNAVAILABLE code should only be present after mapping has
> occurred, but the retry needs to be invoked before mapping. Note that
> ldap_back_op_result will send a result code to the client, so even if
> back-ldap actually retries the operation, the client will have already
> gone away.
I'm not so sure it's broken. I haven't gone thru all of it yet, but as
far as search is concerned, it seems to me that the right value is
checked before and after mapping, and that ldap_back_op_result() is only
called when retry is no longer an option. I'll investigate a bit more
carefully; I might add some #ifdef'd code to test those error
conditions.
p.
Ing. Pierangelo Masarati
Responsabile Open Solution
OpenLDAP Core Team
SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office: +39.02.23998309
Mobile: +39.333.4963172
Email: pierangelo.masarati@sys-net.it
------------------------------------------