Bug 1044135 - [RFE] make connection buffer size adjustable
Summary: [RFE] make connection buffer size adjustable
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: 389-ds-base
Version: 7.0
Hardware: Unspecified
OS: Unspecified
low
unspecified
Target Milestone: rc
: ---
Assignee: Rich Megginson
QA Contact: Viktor Ashirov
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-17 21:15 UTC by Nathan Kinder
Modified: 2015-08-26 15:16 UTC (History)
4 users (show)

Fixed In Version: 389-ds-base-1.3.3.1-1.el7
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-03-05 09:29:39 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:0416 normal SHIPPED_LIVE Important: 389-ds-base security, bug fix, and enhancement update 2015-03-05 14:26:33 UTC

Description Nathan Kinder 2013-12-17 21:15:28 UTC
This bug is created as a clone of upstream ticket:
https://fedorahosted.org/389/ticket/47319

The buffer size is fixed at LDAP_SOCKET_IO_BUFFER_SIZE == 512.  We should allow changing the buffer size.

Comment 3 Rich Megginson 2014-10-21 21:03:24 UTC
Note that this is not something that we will be documenting or exposing to customers at this time.

* using ldapmodify, set nsslapd-connection-buffer in cn=config to 2
- confirm with ldapsearch that the value is set to 2
- confirm that ldapsearch works and doesn't cause any errors or crashing

* using ldapmodify, set nsslapd-connection-buffer in cn=config to 0
- confirm with ldapsearch that the value is set to 0
- confirm that ldapsearch works and doesn't cause any errors or crashing

* using ldapmodify, set nsslapd-connection-buffer in cn=config to 1
- confirm with ldapsearch that the value is set to 1
- confirm that ldapsearch works and doesn't cause any errors or crashing

* using ldapmodify, set nsslapd-connection-buffer in cn=config to 3
- confirm that server returns Operations Error
- confirm with ldapsearch that the value was not changed

* using ldapmodify, set nsslapd-connection-buffer in cn=config to -1
- confirm that server returns Operations Error
- confirm with ldapsearch that the value was not changed

* using ldapmodify, set nsslapd-connection-buffer in cn=config to "a"
- confirm that server returns Operations Error
- confirm with ldapsearch that the value was not changed

Comment 4 Sankar Ramalingam 2014-10-27 15:12:58 UTC
(In reply to Rich Megginson from comment #3)
> Note that this is not something that we will be documenting or exposing to
> customers at this time.
> 
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to 2
> - confirm with ldapsearch that the value is set to 2
> - confirm that ldapsearch works and doesn't cause any errors or crashing
> 
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to 0
> - confirm with ldapsearch that the value is set to 0
> - confirm that ldapsearch works and doesn't cause any errors or crashing
> 
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to 1
> - confirm with ldapsearch that the value is set to 1
> - confirm that ldapsearch works and doesn't cause any errors or crashing
> 
What differences should we see for above 3 values(0,1 and 2)? 
Does it affect performance of large ldap searches?
Should we set one of this value in TET to increase the response time?
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to 3
> - confirm that server returns Operations Error
> - confirm with ldapsearch that the value was not changed
> 
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to -1
> - confirm that server returns Operations Error
> - confirm with ldapsearch that the value was not changed
> 
> * using ldapmodify, set nsslapd-connection-buffer in cn=config to "a"
> - confirm that server returns Operations Error
> - confirm with ldapsearch that the value was not changed

Comment 5 Rich Megginson 2014-10-27 15:41:58 UTC
(In reply to Sankar Ramalingam from comment #4)
> (In reply to Rich Megginson from comment #3)
> > Note that this is not something that we will be documenting or exposing to
> > customers at this time.
> > 
> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to 2
> > - confirm with ldapsearch that the value is set to 2
> > - confirm that ldapsearch works and doesn't cause any errors or crashing
> > 
> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to 0
> > - confirm with ldapsearch that the value is set to 0
> > - confirm that ldapsearch works and doesn't cause any errors or crashing
> > 
> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to 1
> > - confirm with ldapsearch that the value is set to 1
> > - confirm that ldapsearch works and doesn't cause any errors or crashing
> > 
> What differences should we see for above 3 values(0,1 and 2)? 

You shouldn't see any differences.

> Does it affect performance of large ldap searches?

Not exactly, and it is very difficult to measure.

> Should we set one of this value in TET to increase the response time?

Not sure what you mean.

The intention of nsslapd-connection-buffer is for use in future performance investigation by development.  It is not intended (at this time) for users to change the setting at all.

> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to 3
> > - confirm that server returns Operations Error
> > - confirm with ldapsearch that the value was not changed
> > 
> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to -1
> > - confirm that server returns Operations Error
> > - confirm with ldapsearch that the value was not changed
> > 
> > * using ldapmodify, set nsslapd-connection-buffer in cn=config to "a"
> > - confirm that server returns Operations Error
> > - confirm with ldapsearch that the value was not changed

Comment 6 Amita Sharma 2014-12-19 08:07:18 UTC
ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
dn: cn=config
changetype: modify
replace: nsslapd-connection-buffer
nsslapd-connection-buffer: 2
EOF

[root@dhcp201-126 ~]# ldapsearch -D "cn=directory manager" -w Secret123 -p 389 -h localhost -b "cn=config" | grep nsslapd-connection-buffer 
nsslapd-connection-buffer: 2

[root@dhcp201-126 ~]# ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
> dn: cn=config
> changetype: modify
> replace: nsslapd-connection-buffer
> nsslapd-connection-buffer: 0
> EOF
modifying entry "cn=config"

[root@dhcp201-126 ~]# ldapsearch -D "cn=directory manager" -w Secret123 -p 389 -h localhost -b "cn=config" | grep nsslapd-connection-buffer 
nsslapd-connection-buffer: 0
[root@dhcp201-126 ~]# 


[root@dhcp201-126 ~]# ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
> dn: cn=config
> changetype: modify
> replace: nsslapd-connection-buffer
> nsslapd-connection-buffer: 1
> EOF
modifying entry "cn=config"


[root@dhcp201-126 ~]# ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
> dn: cn=config
> changetype: modify
> replace: nsslapd-connection-buffer
> nsslapd-connection-buffer: 3
> EOF
modifying entry "cn=config"
ldap_modify: Operations error (1)
	additional info: nsslapd-connection-buffer: invalid value "3". Valid values are "0", "1", or "2".

[root@dhcp201-126 ~]# ldapsearch -D "cn=directory manager" -w Secret123 -p 389 -h localhost -b "cn=config" | grep nsslapd-connection-buffer 
nsslapd-connection-buffer: 1
[root@dhcp201-126 ~]# ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
dn: cn=config
changetype: modify
replace: nsslapd-connection-buffer
nsslapd-connection-buffer: -1
EOF

modifying entry "cn=config"
ldap_modify: Operations error (1)
	additional info: nsslapd-connection-buffer: invalid value "-1". Valid values are "0", "1", or "2".

[root@dhcp201-126 ~]# ldapsearch -D "cn=directory manager" -w Secret123 -p 389 -h localhost -b "cn=config" | grep nsslapd-connection-buffer 
nsslapd-connection-buffer: 1

[root@dhcp201-126 ~]# ldapmodify -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF
dn: cn=config
changetype: modify
replace: nsslapd-connection-buffer
nsslapd-connection-buffer: a 
EOF

modifying entry "cn=config"
ldap_modify: Operations error (1)
	additional info: nsslapd-connection-buffer: invalid value "a". Valid values are "0", "1", or "2".

Hence VERIFIED.

Comment 8 errata-xmlrpc 2015-03-05 09:29:39 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.

https://rhn.redhat.com/errata/RHSA-2015-0416.html


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