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

Re: ITS#4338 (Was: commit: ldap/servers/slapd daemon.c)

Pierangelo Masarati wrote:
> On Fri, 2006-01-13 at 16:30 +0000, hyc@OpenLDAP.org wrote:
>> Update of /repo/OpenLDAP/pkg/ldap/servers/slapd
>> Modified Files:
>> 	daemon.c  1.372 -> 1.373
>> Log Message:
>> ITS#4338 delete extraneous slapd_close() calls. Descriptors that were in
>> the event set must be removed using slapd_remove() and the whole sequence
>> must be protected with the slap_daemon.sd_mutex to close them properly.
>> Otherwise it will wind up closing valid, freshly opened sockets, or closing
>> dead sockets twice, etc. It's unnecessary to do any close management here
>> since connection.c already does the correct teardown sequence.
> I guess this answer obsoletes ITS#4333; based on some odd connection-
> closing related logging I get when test036 & test039 hung (proxy &
> targets perfectly responsive, but no activity on both and the clients
> waiting for response), I suspect this was the same root cause.

It probably explains ITS#4216 and a variety of others as well, and 
certainly the bug is more likely to manifest as the frequency of 
connects/disconnects goes up.

  -- Howard Chu
  Chief Architect, Symas Corp.  http://www.symas.com
  Director, Highland Sun        http://highlandsun.com/hyc
  OpenLDAP Core Team            http://www.openldap.org/project/