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

Re: HEADS UP: slapd outbound connections





--On Friday, October 24, 2003 4:07 AM -0700 Howard Chu <hyc@symas.com> wrote:

I've added some code to let slapd manage outbound connections in its main
listener thread. Activity on connections marked SLAP_C_CLIENT are handed
off directly to the thread pool. I've also restructured syncrepl so that
it uses this feature in persist mode.

This approach frees up the thread that would otherwise be tied up in the
persist loop. It also avoids the need to poll on 10-second intervals to
detect slapd shutdown, while still providing immediate response to
incoming changes. Let me know if you see any problems....


Unfortunately, this appears to cause the replica's using syncRepl to segfault:


ldap_msgfree
ldap_result msgid -1
ldap_chkResponseList for msgid=-1, all=0
ldap_chkResponseList returns NULL
wait4msg (timeout 0 sec, 0 usec), msgid -1
wait4msg continue, msgid -1, all 0
** Connections:
* host: ldap-dev0.stanford.edu  port: 389  (default)
 refcnt: 2  status: Connected
 last used: Fri Oct 24 17:23:03 2003

** Outstanding Requests:
* msgid 4,  origid 4, status InProgress
  outstanding referrals 0, parent count 0
** Response Queue:
  Empty
ldap_chkResponseList for msgid=-1, all=0
ldap_chkResponseList returns NULL
ldap_int_select
connection_get(11)
connection_get(11): got connid=0
daemon: added 11r
daemon: activity on 1 descriptors
daemon: select: listen=6 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select timeout - yielding
daemon: select: listen=6 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select timeout - yielding
daemon: select: listen=6 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select timeout - yielding
daemon: select: listen=6 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select timeout - yielding
daemon: select: listen=6 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select timeout - yielding
connection_closing: readying conn=0 sd=-1 for close
Segmentation Fault


--Quanah

--
Quanah Gibson-Mount
Principal Software Developer
ITSS/TSS/Computing Systems
ITSS/TSS/Infrastructure Operations
Stanford University
GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html