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

LDAP calls hang



Hi,

I am using the ldap client library (libldap.so.2.0.11) in an apache server module. I have noticed that a few child processes hang in the ldap calls and cause the server response to slow down.
I have attached two sample traces of the place where the hang occurs.
Upon searching the archives I found ITS #446 (wait4msg hangs) which is now closed but the related
patch was not committed. The discussion referred to the usage of blocking sockets which cause the hang.


Is the problem solved in the latest library?

Thanks,
Amit B


TRACE #1

#0  0xfef1b3bc in _read () from /usr/lib/libc.so.1
#1  0xfee4a6c8 in read () from /usr/lib/libthread.so.1
#2  0xfece8598 in sb_rdahead_read (sbiod=0x371070, buf=0x42b398, len=1)
   at sockbuf.c:652
#3  0xfece8b3c in sb_debug_read (sbiod=0x370fd0, buf=0x42b398, len=1)
   at sockbuf.c:817
#4  0xfece7f90 in ber_int_sb_read (sb=0x241588, buf=0x42b398, len=1)
   at sockbuf.c:406
#5  0xfece5e28 in ber_get_next (sb=0x241588, len=0xffbebf6c, ber=0x42b388)
   at io.c:465
#6  0xfed07e6c in try_read1msg (ld=0x36db90, msgid=11, all=1, sb=0x241588,
   lc=0x36d860, result=0x42d3a8) at result.c:375
#7  0xfed07cb8 in wait4msg (ld=0x36db90, msgid=11, all=1, timeout=0x36d860,
   result=0x42d3a8) at result.c:306
#8  0xfed07790 in ldap_result (ld=0x36db90, msgid=11, all=1,
   timeout=0xffbec148, result=0x42d3a8) at result.c:114
#9  0xf9c21914 in ildap_search (con=0x36df48, base=0xfa10db64 "", scope=1,
   filter=0xffbec148 "", attrs=0x42d3a8, size_limit=0, result=0x42d3a8)
   at ldap.c:2619

TRACE #2

#0 0x402c954e in select () from /lib/libc.so.6
#1 0x41087f98 in __DTOR_END__ () from /home/midhun/local/ifs/lib/libldap.so.2
#2 0x4106a993 in wait4msg (ld=0x86142f8, msgid=1, all=1, timeout=0x0,
result=0xbffff1e4) at result.c:275
#3 0x410721e2 in ldap_sasl_bind_s (ld=0x86142f8, dn=0x8612338 "cn=manager",
mechanism=0x0, cred=0xbffff220, sctrls=0x0, cctrls=0x0, servercredp=0x0) at sasl.c:186
#4 0x4107285a in ldap_simple_bind_s (ld=0x86142f8, dn=0x8612338 "cn=manager",
passwd=0x86124e0 "secret") at sbind.c:111
#5 0x40d90baf in get_ldap_connection (params=0x8612140) at cp_ldap_util.c:30