Issue 6874 - slapd crashes while modifying a database
Summary: slapd crashes while modifying a database
Status: VERIFIED FIXED
Alias: None
Product: OpenLDAP
Classification: Unclassified
Component: slapd (show other issues)
Version: 2.4.24
Hardware: All All
: --- normal
Target Milestone: ---
Assignee: OpenLDAP project
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-19 13:37 UTC by dieter@dkluenter.de
Modified: 2017-04-16 20:42 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description dieter@dkluenter.de 2011-03-19 13:37:46 UTC
Full_Name: Dieter Kluenter
Version: 2.4.24
OS: SLES11_x64
URL: 
Submission from: (NULL) (88.71.14.24)


While modifying a database, either subordinate or not, slapd crashes.
Debugging and configuration information can be found here:
http://pastebin.de/16349 (debugging)
http://pastebin.de/16350 (slapd.conf)

linked libraries are
/usr/lib/openldap> ldd slapd
	linux-vdso.so.1 =>  (0x00007fff8e9e1000)
	libldap_r-2.4.so.2 => /usr/lib64/libldap_r-2.4.so.2 (0x00007f633361e000)
	liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f633340f000)
	libltdl.so.7 => /usr/lib64/libltdl.so.7 (0x00007f6333205000)
	libdb-4.5.so => /usr/lib64/libdb-4.5.so (0x00007f6332ece000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6332cb1000)
	libslp.so.1 => /usr/lib64/libslp.so.1 (0x00007f6332a97000)
	libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00007f633287c000)
	libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f63324cd000)
	libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f6332292000)
	libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f6332087000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f6331d27000)
	libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f6331b10000)
	libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007f63318b4000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f63316b0000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f633386f000)
	libz.so.1 => /lib64/libz.so.1 (0x00007f633149a000)

-Dieter
Comment 1 Ralf 2011-03-21 16:39:08 UTC
Am Samstag 19 März 2011, 14:37:46 schrieb dieter@dkluenter.de:
> While modifying a database, either subordinate or not, slapd crashes.
> Debugging and configuration information can be found here:
> http://pastebin.de/16349 (debugging)
> http://pastebin.de/16350 (slapd.conf)

I wonder if such a configuration is even supposed to work. The accesslog 
overlay on the master is configured for the glued database 
(dc=dkluenter,dc=de). On the slave however you have individual syncrepl 
configuration for each subordinate database. Wouldn't it be correct to 
have separate accesslog databases for the subordinates?

Additionally I think that at least the "overlay syncprov" for the 
subordinate databases on the master is wrong (as syncprov is already 
configured for the glued database). Not sure if it is harmful though.

A more selfcontained and stripped down example configuration with actual 
data and information on which operation exactly fails could also help 
debugging this (assuming that your config turns out to be valid).

Ralf

Comment 2 Howard Chu 2011-06-09 07:13:32 UTC
changed notes
changed state Open to Suspended
Comment 3 Quanah Gibson-Mount 2017-04-07 23:58:51 UTC
Hello Dieter,

Unfortunately your configuration for this ITS has been lost as it was stuck 
in a pastebin instead of supplied directly in the ITS itself.  It does 
appear there was some question as to whether or not your configuration was 
valid, as well.  If you still have this configuration and you still 
experience a crash with the current OpenLDAP release, please follow up with 
the full configuration information, debug backtrace, etc.  In the meantime, 
this ITS will be closed.

Regards,
Quanah

--

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


Comment 4 Quanah Gibson-Mount 2017-04-07 23:59:05 UTC
changed state Suspended to Closed
moved from Incoming to Software Bugs
Comment 5 OpenLDAP project 2017-04-16 20:41:11 UTC
Per Dieter, close this ITS, config was invalid
Comment 6 Quanah Gibson-Mount 2017-04-16 20:41:11 UTC
changed notes
Comment 7 Quanah Gibson-Mount 2017-04-16 20:42:52 UTC
For historical reference, this was the config (Considered invalid) that 
caused the crash.

# $Id: slapd.conf.tmp-ofd,v 1.2 2010/12/23 13:21:29 dieter Exp dieter $
#### Schemata, Reihenfolge wegen Abh??ngikeiten u.U. wichtig!

##############################
#       Globale Anweisungen  #
##############################
include		/etc/openldap/schema/core.schema
include		/etc/openldap/schema/cosine.schema
include		/etc/openldap/schema/inetorgperson.schema
include		/etc/openldap/schema/rfc2307bis.schema
include		/etc/openldap/schema/authldap.schema
include		/etc/openldap/schema/openldap.schema
include		/etc/openldap/schema/dyngroup.schema
include		/etc/openldap/schema/dnszone.schema
include		/etc/openldap/schema/dhcp.schema
include		/etc/openldap/schema/ofdconf.schema
include		/etc/openldap/schema/yast.schema
include		/etc/openldap/schema/ofdaddon.schema

pidfile		/tmp2/ldap1/run/slapd.pid
argsfile	/tmp2/ldap1/run/slapd.args
loglevel 0

threads 160
password-hash {CLEARTEXT}
modulepath	/usr/lib/openldap/modules
moduleload 	accesslog.la
moduleload 	dynlist.la
moduleload	memberof.la
moduleload	refint.la
moduleload	unique.la

TLSCACertificateFile /etc/openldap/ssl/ldapca.pem
TLSCertificateFile /etc/openldap/ssl/ldapcert.pem
TLSCertificateKeyFile /etc/openldap/ssl/ldapkey.pem

access to dn.base="" by * read
access to dn.base="cn=Subschema" by * read
include /etc/openldap/ofd.acl

sizelimit -1
timelimit 4000
# allow bind_v2
###############################
#       Config Database       #
###############################

database	config
rootdn		cn=config
rootpw		secret

##############################
#       Erste Database       #
##############################

database	hdb
suffix          "ou=humans,ou=steuer,o=landesverwaltung niedersachsen,c=de"
subordinate advertise
rootdn          "cn=gen.man,ou=mgr,ou=steuer,o=landesverwaltung 
niedersachsen,c=de"
directory 	/tmp2/ldap1/human-data	
checkpoint	4096	5
index		default pres,eq
index		objectclass eq
index		mail sub,eq
index		sn sub,eq
index		cn sub,eq
index		entryCSN,entryUUID
cachesize	5000
idlcachesize	15000
dbconfig set_cachesize 0 68157440 0
dbconfig set_lg_dir /tmp2/ldap1/log/bdb/human
dbconfig set_lg_regionmax 262144
dbconfig set_lg_bsize 2097152
dbconfig set_flags DB_LOG_AUTOREMOVE
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
syncprov-reloadhint TRUE

###############################
#      Zweite Database        #
###############################

database	hdb
suffix    "ou=system,ou=steuer,o=landesverwaltung niedersachsen,c=de"
subordinate advertise
rootdn  "cn=gen.man,ou=mgr,ou=steuer,o=landesverwaltung niedersachsen,c=de"
directory       /tmp2/ldap1/sys-data
checkpoint	4096 5
cachesize	5000
idlcachesize	1500
index	objectclass eq
index	sn,cn,mail eq,sub
index	entryCSN,entryUUID eq
dbconfig set_cachesize 0 68157440 0
dbconfig set_lg_dir /tmp2/ldap1/log/bdb/sys
dbconfig set_lg_regionmax 262144
dbconfig set_lg_bsize 2097152
dbconfig set_flags DB_LOG_AUTOREMOVE
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
syncprov-reloadhint TRUE

##########################
#    Dritte Database     #
##########################

database	hdb
suffix          "ou=steuer,o=landesverwaltung niedersachsen,c=de"
rootdn   "cn=gen.man,ou=mgr,ou=steuer,o=landesverwaltung niedersachsen,c=de"
rootpw          secret
directory	/tmp2/ldap1/main-data
checkpoint	4096 5
cachesize	5000
idlcachesize	1500
dbconfig set_cachesize 0 68157440 0
dbconfig set_lg_dir /tmp2/ldap1/log/bdb/main
dbconfig set_lg_regionmax 262144
dbconfig set_lg_bsize 2097152
dbconfig set_flags DB_LOG_AUTOREMOVE
	
index	objectClass	eq
index default pres,eq
index mail,telephoneNumber
index cn,sn,uid eq,sub
index entryUUID,entryCSN eq

overlay glue
overlay accesslog
logdb "cn=log"
logops  writes

overlay syncprov
syncprov-checkpoint 100 10
syncprov-reloadhint TRUE

############################
#     Log Database         #
############################

database hdb
suffix "cn=log"
directory /tmp2/ldap1/log-data
rootdn	cn=log
checkpoint 10240 5
dbconfig set_cachesize 0 367001600 0
dbconfig set_lg_dir /tmp2/ldap1/log/bdb/log
dbconfig set_lg_regionmax 262144
dbconfig set_lg_bsize 2097152
dbconfig set_flags DB_LOG_AUTOREMOVE
index objectClass eq
index reqStart,entryCSN,reqEnd,reqResult eq
overlay syncprov
syncprov-nopresent TRUE
syncprov-checkpoint 100 10

#############################
#    Monitor Database       #
#############################

database monitor
# EOF


--

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