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

crash in slurpd when slave not present (ITS#2810)



Full_Name: ocmer
Version: 2.1.23
OS: Linux 2.4.20-13.7smp #1 SMP Mon May 12 12:31:27 EDT
2003 i686 unknown
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (217.120.171.59)


When running OpenLDAP 2.1.23 (using the BDB backend), on a HP DL380 (using 2
hyperthreaded Xeon
processors), a crash occured in slurpd.

OpenLDAP's slapd was put under load with 50 parallel connections, where 12
connections were performing 1000 reads,
2 modify's, and 1 write action per connection, and 38 connections were
performing reads only for a period of 24 hours.
Replication was configured for one slave and slurpd was started. The slave which
should recieve the data from the slurpd was (intentionally) not started.
After 2 hours of starting the test, the crash in slurpd occured.

GNU gdb Red Hat Linux (5.1.90CVS-5)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
Core was generated by `/home/zzzzzzz/openldap-2.1.23/servers/slurpd/slurpd -f
/home/cdsadmin/ldap/etc/'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/i686/libpthread.so.0...done.
Loaded symbols for /lib/i686/libpthread.so.0
Reading symbols from /lib/i686/libc.so.6...done.
Loaded symbols for /lib/i686/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
#0  0x42080e63 in strncmp () from /lib/i686/libc.so.6
(gdb) #0  0x42080e63 in strncmp () from /lib/i686/libc.so.6
#1  0x0804e18b in get_repl_hosts (replbuf=0x80818c0 "replica:",
r_nreplicas=0x4043f9a0, 
    r_rp=0x4043f9a4) at re.c:331
#2  0x0804db55 in Re_parse (re=0x27d0f728, replbuf=0x80818c0 "replica:") at
re.c:164
#3  0x0804f7a5 in Rq_add (rq=0x8071f80, buf=0x80818c0 "replica:") at rq.c:177
#4  0x0804b6c0 in populate_queue (
    f=0x8070efc "/home/cdsadmin/ldap/var/openldap-slurp/replica/slurpd.replog")
at fm.c:237
#5  0x0804b304 in fm (arg=0x0) at fm.c:105
#6  0x40030faf in pthread_start_thread () from /lib/i686/libpthread.so.0
(gdb) 
Thread 1 (process 1782):
#0  0x42080e63 in strncmp () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x0804e18b in get_repl_hosts (replbuf=0x80818c0 "replica:",
r_nreplicas=0x4043f9a0, 
    r_rp=0x4043f9a4) at re.c:331
	replbuf = 0x0
	type = 0x27d0f788 "à÷Ð'"
	value = 0x27d0f828 "¨ß\022B¨ß\022B\020"
	line = 0x0
	p = 0x0
	rh = (Rh *) 0x0
	nreplicas = 0
	len = 0
	port = 0
	repl_ok = 0
	i = 5
#2  0x0804db55 in Re_parse (re=0x27d0f728, replbuf=0x80818c0 "replica:") at
re.c:164
	replbuf = 0x0
	state = 0
	nml = 668006184
	buf = 0x8071f80 "PS\a\bÈóÐ'\024\201\004"
	rp = 0x0
	p = 0x8071f80 "PS\a\bÈóÐ'\024\201\004"
	type = 0x4043f9b4 "äùC@¥÷\004\b(÷Ð'À\030\b\b°ü\a\b\b"
	value = 0x804e90e "1À\213]üÉÃ\215v"
	len = 668006184
	nreplicas = 0
#3  0x0804f7a5 in Rq_add (rq=0x8071f80, buf=0x80818c0 "replica:") at rq.c:177
	rq = (Rq *) 0x8071f80
	re = (Re *) 0x27d0f728
	wasempty = 0
#4  0x0804b6c0 in populate_queue (
    f=0x8070efc "/home/cdsadmin/ldap/var/openldap-slurp/replica/slurpd.replog")
at fm.c:237
	f = 0x8070efc "/home/cdsadmin/ldap/var/openldap-slurp/replica/slurpd.replog"
	fp = (FILE *) 0x807fcb0
	lfp = (FILE *) 0x8072900
	p = 0x80818c0 "replica:"
#5  0x0804b304 in fm (arg=0x0) at fm.c:105
	rc = 0
	i = 1078196812
	readfds = {__fds_bits = {0 <repeats 32 times>}}
#6  0x40030faf in pthread_start_thread () from /lib/i686/libpthread.so.0
No symbol table info available.
(gdb)