Bug 969210 - make listen backlog size configurable
Summary: make listen backlog size configurable
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: 389-ds-base
Version: 6.4
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Rich Megginson
QA Contact: Sankar Ramalingam
Depends On: 995507
Blocks: 974251
TreeView+ depends on / blocked
Reported: 2013-05-30 22:02 UTC by Nathan Kinder
Modified: 2013-11-21 21:08 UTC (History)
4 users (show)

Fixed In Version: 389-ds-base-
Doc Type: Bug Fix
Doc Text:
Cause: The listen backlog size (the backlog parameter to the listen(2) function) is hard coded to be 128. Consequence: Under certain conditions where the server may be processing hundreds of simultaneous connection requests, the server will drop connection requests due to the backlog being exceeded. Fix: Add a new configuration attribute - nsslapd-listen-backlog-size - that will allow the backlog size to be changed. Result: Server can queue up to the system maximum of tcp connections.
Clone Of:
: 974251 (view as bug list)
Last Closed: 2013-11-21 21:08:25 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:1653 normal SHIPPED_LIVE 389-ds-base bug fix update 2013-11-20 21:53:19 UTC

Description Nathan Kinder 2013-05-30 22:02:53 UTC
This bug is created as a clone of upstream ticket:

The listen backlog size is hardcoded at 128 - it should be configurable

Comment 1 Sankar Ramalingam 2013-05-31 00:47:07 UTC
I don't see any information about this configuration parameter either DS admin guide or in the upstream ticket.

Comment 2 Nathan Kinder 2013-05-31 15:13:48 UTC
(In reply to Sankar Ramalingam from comment #1)
> I don't see any information about this configuration parameter either DS
> admin guide or in the upstream ticket.

A documentation bug will need to be opened for the Config/Command Guide.  Details on the listen queue backlog can be found in the manpage for listen (man 2 listen):

       int listen(int sockfd, int backlog);

       listen()  marks  the  socket referred to by sockfd as a passive socket,
       that is, as a socket that will be used to  accept  incoming  connection
       requests using accept(2).

       The  sockfd  argument  is  a file descriptor that refers to a socket of

       The backlog argument defines the maximum length to which the  queue  of
       pending  connections  for  sockfd  may  grow.   If a connection request
       arrives when the queue is full, the client may receive an error with an
       indication  of  ECONNREFUSED  or,  if  the underlying protocol supports
       retransmission, the request may be ignored so that a later reattempt at
       connection succeeds.

Comment 10 errata-xmlrpc 2013-11-21 21:08:25 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.