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

Re: SV: 100.000 pr. second: "connection_read(64): no connection" from slapd



--On Wednesday, March 29, 2017 3:37 PM +0000 Ole Nomann Thomsen <ole.nomann@stil.dk> wrote:

[Side note, do I answer this directly to you, or to the list? I choose
directly for now ]

The list.

Thanks for your answer

I use -d because I run slapd under deamontools
(https://cr.yp.to/daemontools/faq/create.html) and multilog
(https://cr.yp.to/daemontools/multilog.html) that are both suited for
servers that run in the foreground. So the "not in the background" thing
is intentional. I realize that I might be misusing the -d facility
somewhat, but it has been working fine until now. Reworking the setup to
use backgrounding and syslog is really not an option at this time.

I use bdb backend database.

I'd strongly advise not using back-bdb.

I agree that I have lots of clients that disconnect without closing.
Could this somehow provoke the error?  It seems to be cycling in this
line:

	/* get (locked) connection */
	c = connection_get( s );

	if( c == NULL ) {
		Debug( LDAP_DEBUG_ANY,
			"connection_read(%ld): no connection!\n",
			(long) s, 0, 0 );

		return -1;
	}




2017-03-06 13:56:23.140091500 58bd5c77 connection_read(64): no connection!
2017-03-06 13:56:23.140093500 58bd5c77 connection_read(64): no connection!
2017-03-06 13:56:23.140095500 58bd5c77 connection_read(64): no connection!
2017-03-06 13:56:23.140097500 58bd5c77 connection_read(64): no connection!

Once in every 2 microseconds - that suggest som kind of unintended loop
to me.


No, you simply have clients that have disconnected before slapd could finish sending them results. Given that you clearly have broken clients, I'd suggest you see about setting the (olc)writetimeout parameter documented in slapd.conf(5)/slapd-config(5) and see if it alleviates the issue you are facing.

--Quanah


Regards
Ole Nomann Thomsen
Seniorkonsulent

Undervisningsministeriet
Styrelsen for It og Læring
Center for Digitale Overgange og it-styring

Telefon: 3587 8889
Direkte: +45 35 87 85 35

ole.nomann@stil.dk
www.stil.dk



-----Oprindelig meddelelse-----
Fra: Quanah Gibson-Mount [mailto:quanah@symas.com]
Sendt: 23. marts 2017 19:42
Til: Ole Nomann Thomsen; 'openldap-technical@openldap.org'
Emne: Re: 100.000 pr. second: "connection_read(64): no connection" from
slapd

--On Thursday, March 23, 2017 2:37 PM +0000 Ole Nomann Thomsen
<ole.nomann@stil.dk> wrote:

>
>
> Hi all,
>
>
>
> my slapd (@(#) $OpenLDAP: slapd 2.4.44 (Feb  9 2017 13:38:13) $) has
> developed a tendency to become unresponsive for 10-30 minutes at a
time.
>
> I run it with -dStats,Sync which gets me a fair amount of debugging
> info. This I pipe thru multilog to get the timestamps below.

Why are you using -d?  This prevents slapd from forking.  It is better to
set the loglevel to be stats+sync, and push out data to syslog.

> 2017-03-10 14:39:08.686058500 58c2ac7c slapd shutdown: waiting for
> 3643059 operations/tasks to finish

You need to determine why tasks are not finishing and instead are
remaining unfinished.  What databse backend are you using?  I would note
that it would appear that you have clients disconnecting w/o waiting for
the server to respond (thus the no connection messages).

--Quanah

--

Quanah Gibson-Mount
Product Architect
Symas Corporation
Packaged, certified, and supported LDAP solutions powered by OpenLDAP:
<http://www.symas.com>




--

Quanah Gibson-Mount
Product Architect
Symas Corporation
Packaged, certified, and supported LDAP solutions powered by OpenLDAP:
<http://www.symas.com>