Full_Name: dcoutadeur Version: 2.4.28 OS: Red Hat Enterprise Linux Server release 5.7 (Tikanga) URL: ftp://ftp.openldap.org/incoming/ Submission from: (NULL) (109.197.176.10)
Hi everybody,
I have encountered a bug on openldap 2.4.28 and openldap 2.4.29 (ie git version) slapd is shutting down with no message in the logs when I try to do a load benchmark with a soft in C. The test consists in 20 threads doing 100 times these operations in the order : - 1 entry add - 1 modification on this entry - 1 deletion on this entry Of course, some operations ends up with ldap errors, because the entry does not exist, and so on...
During the load testing, Openldap is reacting as expected. If I stop the test while it runs, then the bug occurs (nearly systematically)
You can check my configuration and the stacktrace here. Thank you in advance for helping.
# ---------------------------------------------------------------------------- # Global section # ----------------------------------------------------------------------------
sizelimit 15000
allow bind_v2 password-hash {SSHA} threads 8 loglevel 256
serverID 2
include /opt/openldap/etc/openldap/inc_shemas/slapd-schemas.conf
pidfile /opt/openldap/var/run/slapd.pid argsfile /opt/openldap/var/run/slapd.args
# ACLs definition (cutted here)
####################################################################### # SSL definitions ####################################################################### # Definition of cert files # --------------------------------- TLSCipherSuite HIGH:MEDIUM:+SSLv2
TLSCACertificateFile /usr/local/openldap/etc/certs/ca.cert TLSCertificateFile /usr/local/openldap/etc/certs/ldap-master-2.cert TLSCertificateKeyFile /usr/local/openldap/etc/certs/ldap-master-2.key
TLSVerifyClient never
####################################################################### # BDB database definitions ####################################################################### database monitor
####################################################################### # suffix dc=example,dc=com # -------------------- ####################################################################### database bdb directory /opt/openldap/var/openldap-data # some indexes
# ---------------------------------------------------------------------------- # root suffix # ---------------------------------------------------------------------------- suffix "dc=example,dc=com" checkpoint 512 10
# ---------------------------------------------------------------------------- # cache settings # ----------------------------------------------------------------------------
cachesize 60000 dncachesize 60000 idlcachesize 60000 cachefree 100
rootdn "cn=Manager,dc=example,dc=com" rootpw secret
# Password policy : hash the clear passwords overlay ppolicy ppolicy_hash_cleartext
# ---------------------------------------------------------------------------- # REPLICATION definitions # ---------------------------------------------------------------------------- #######################################################################
# I am a master (provider) # ------------------------------------------ overlay syncprov syncprov-checkpoint 100 10 syncprov-sessionlog 100
# syncrepl directive (consummer infos) # ------------------------------------------ syncrepl rid=001 provider=ldap://ldap-master-1.example.com bindmethod=simple binddn="uid=ReplicationMaster,ou=Replication,ou=Special Users,dc=example,dc=com" credentials=secret searchbase="dc=example,dc=com" schemachecking=on type=refreshAndPersist retry="60 +"
mirrormode on
# ---------------------------------------------------------------------------- # limits # ----------------------------------------------------------------------------
limits dn.exact="uid=ReplicationMaster,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited limits dn.exact="uid=ReplicationHub,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited limits dn.exact="uid=ReplicationLSC,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited
####################################################################### # suffix o=edition # ---------------- ####################################################################### database bdb
directory /opt/openldap/var/openldap-data-edition # some indexes
# ---------------------------------------------------------------------------- # root suffix # ---------------------------------------------------------------------------- suffix "o=edition" checkpoint 512 10
# ---------------------------------------------------------------------------- # cache settings # ----------------------------------------------------------------------------
cachesize 50000 dncachesize 50000 idlcachesize 50000 cachefree 100
# ---------------------------------------------------------------------------- # rootdn # ---------------------------------------------------------------------------- # Cleartext passwords, especially for the rootdn, should # be avoid. See slappasswd(8) and slapd.conf(5) for details. # Use of strong authentication encouraged. rootdn "cn=Manager,o=edition" rootpw secret
# Password policy : hash the clear passwords overlay ppolicy ppolicy_hash_cleartext
####################################################################### # REPLICATION definitions #######################################################################
# I am a master (provider) # ------------------------------------------ overlay syncprov syncprov-checkpoint 100 10 syncprov-sessionlog 100
# syncrepl directive (consummer infos) # ------------------------------------------ syncrepl rid=002 provider=ldap://vspar-ldap-master-1.example.com bindmethod=simple binddn="uid=ReplicationMaster,ou=Replication,ou=Special Users,dc=example,dc=com" credentials=secret searchbase="o=edition" schemachecking=on type=refreshAndPersist retry="60 +"
mirrormode on
# ---------------------------------------------------------------------------- # Limits for current BDB # ----------------------------------------------------------------------------
limits dn.exact="uid=ReplicationMaster,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited limits dn.exact="uid=ReplicationHub,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited limits dn.exact="uid=ReplicationLSC,ou=Replication,ou=Special Users,dc=example,dc=com" size=unlimited time=unlimited
############################################################### ######################## STACKTRACE ########################### ###############################################################
(gdb) thread apply all bt
Thread 10 (Thread 32314): #0 0x006b3402 in ?? () #1 0x00822a77 in ?? () #2 0xbffb3a5c in ?? () #3 0x00822930 in ?? () #4 0x9c5b2d90 in ?? () #5 0x00000000 in ?? ()
Thread 9 (Thread 32325): #0 0x006b3402 in ?? () #1 0x00203ae6 in ?? () #2 0x00000000 in ?? ()
Thread 8 (Thread 32326): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () #3 0x006152a9 in ?? () #4 0x8ccb5258 in ?? () #5 0x8ddb7cd8 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8ddb7ca8) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
Thread 7 (Thread 32327): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () ---Type <return> to continue, or q <return> to quit--- #3 0x006152a9 in ?? () #4 0x8cbb4258 in ?? () #5 0x8d9b7e68 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8d9b7e38) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
Thread 6 (Thread 32328): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () #3 0x006152a9 in ?? () #4 0x8c9b2258 in ?? () #5 0x8d5b6e68 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8d5b6e38) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
Thread 5 (Thread 32329): #0 0x0019673c in ?? () #1 0x8d1b4fed in ?? () #2 0x089bfbd0 in ?? () #3 0x00000018 in ?? () #4 0x00000009 in ?? () #5 0x081b2684 in ?? () #6 0x0000000a in ?? () #7 0x8d1b4fed in ?? () #8 0x00285ff4 in ?? () #9 0x081b267a in ?? () #10 0x0000000a in ?? () ---Type <return> to continue, or q <return> to quit--- #11 0x8d1b4e98 in ?? () #12 0x0016d391 in ?? () #13 0x8d1b4ebc in ?? () #14 0x081b267a in ?? () #15 0x0000000a in ?? () #16 0x0012eed5 in ?? () #17 0x00000000 in ?? ()
Thread 4 (Thread 32392): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () #3 0x006152a9 in ?? () #4 0x8b6ab258 in ?? () #5 0x8c5afc98 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8c5afc68) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
Thread 3 (Thread 32393): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () #3 0x006152a9 in ?? () #4 0x8b7ac258 in ?? () #5 0x8c1adcd8 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8c1adca8) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
---Type <return> to continue, or q <return> to quit--- Thread 2 (Thread 32394): #0 0x006b3402 in ?? () #1 0x001e790c in ?? () #2 0x006152b7 in ?? () #3 0x006152a9 in ?? () #4 0x8b5aa258 in ?? () #5 0x8bcace68 in ?? () #6 0x0818d941 in syncprov_op_mod (op=0x8240880, rs=0x8bcace38) at syncprov.c:2112 Backtrace stopped: frame did not save the PC
Thread 1 (Thread 32391): #0 0x0818d9c2 in syncprov_op_mod (op=0x89b2fe0, rs=0x8c9b1108) at syncprov.c:2118 #1 0x080dff34 in overlay_op_walk (op=0x89b2fe0, rs=0x8c9b1108, which=op_add, oi=0x87c98a8, on=0x87cbe98) at backover.c:661 #2 0x080e049a in over_op_func (op=0x89b2fe0, rs=0x8c9b1108, which=op_add) at backover.c:723 #3 0x0807eeb9 in fe_op_add (op=0x89b2fe0, rs=0x8c9b1108) at add.c:334 #4 0x0807f7a3 in do_add (op=0x89b2fe0, rs=0x8c9b1108) at add.c:194 #5 0x0807759d in connection_operation (ctx=0x8c9b11e8, arg_v=0x89b2fe0) at connection.c:1138 #6 0x08077f6d in connection_read_thread (ctx=0x8c9b11e8, argv=0x2f) at connection.c:1274 #7 0x006145e4 in ?? () #8 0x8c9b11e8 in ?? () #9 0x0000002f in ?? () #10 0x00000000 in ?? ()