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

(ITS#5332) multimaster replication crash



Full_Name: Marcel Ritter
Version: HEAD
OS: Linux (openSUSE 10.3)
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (131.188.78.179)


When using multimaster replication slapd dies (on x86_64).

I've used the scripts/test050-syncrepl-multimaster with one simple
modification: I added one ldapadd command at the end of the script,
trying to add some 20000 entries.

With this modification it doesn't take long, till one of the slapds
gets a SIGSEGV:

Continuing.
[New Thread 0x43005950 (LWP 629)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x42003950 (LWP 604)]
0x00002b507f90f2f3 in pthread_mutex_lock () from /lib64/libpthread.so.0

> thread apply all bt

Thread 7 (Thread 0x43005950 (LWP 629)):
#0  0x00002b507f911656 in pthread_cond_wait@@GLIBC_2.3.2 () from
/lib64/libpthread.so.0
#1  0x00000000004dce51 in ldap_int_thread_pool_wrapper (xpool=0x82dfe0) at
tpool.c:582
#2  0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#3  0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x40800950 (LWP 601)):
#0  0x00002b507fbe7478 in epoll_wait () from /lib64/libc.so.6
#1  0x000000000041aac0 in slapd_daemon_task (ptr=<value optimized out>) at
daemon.c:2281
#2  0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#3  0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x41001950 (LWP 602)):
#0  0x00002b507f911656 in pthread_cond_wait@@GLIBC_2.3.2 () from
/lib64/libpthread.so.0
#1  0x00000000004dce51 in ldap_int_thread_pool_wrapper (xpool=0x82dfe0) at
tpool.c:582
#2  0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#3  0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x41802950 (LWP 603)):
#0  0x00002b507f911656 in pthread_cond_wait@@GLIBC_2.3.2 () from
/lib64/libpthread.so.0
#1  0x00000000004dce51 in ldap_int_thread_pool_wrapper (xpool=0x82dfe0) at
tpool.c:582
#2  0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#3  0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x42003950 (LWP 604)):
#0  0x00002b507f90f2f3 in pthread_mutex_lock () from /lib64/libpthread.so.0
#1  0x00000000004a4ecf in bdb_cache_return_entry_rw (bdb=<value optimized out>,
e=0xa062a8, rw=<value optimized out>, 
    lock=<value optimized out>) at cache.c:256
#2  0x0000000000489b65 in bdb_search (op=0x42002660, rs=0x42001ee0) at
search.c:909
#3  0x0000000000477492 in overlay_op_walk (op=0x42002660, rs=0x42001ee0,
which=op_search, oi=0x8d2d50, on=0x0)
    at backover.c:653
#4  0x00000000004779b5 in over_op_func (op=0x42002660, rs=0x42001ee0,
which=op_search) at backover.c:705
#5  0x0000000000471116 in syncrepl_entry (si=0x885a40, op=0x42002660,
entry=0x9f7fc8, modlist=0x420025c8, syncstate=1, 
    syncUUID=0x42002560, syncCSN=0x0) at syncrepl.c:1970
#6  0x0000000000472e5c in do_syncrep2 (op=0x42002660, si=0x885a40) at
syncrepl.c:827
#7  0x00000000004746fc in do_syncrepl (ctx=<value optimized out>, arg=<value
optimized out>) at syncrepl.c:1207
#8  0x00000000004dcdf7 in ldap_int_thread_pool_wrapper (xpool=0x82dfe0) at
tpool.c:625
#9  0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#10 0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x42804950 (LWP 605)):
#0  0x00002b507eaad2f8 in __lock_get_internal () from /usr/lib64/libdb-4.5.so
#1  0x00002b507eaae628 in __lock_vec () from /usr/lib64/libdb-4.5.so
#2  0x00002b507ea87e65 in __db_lget () from /usr/lib64/libdb-4.5.so
#3  0x00002b507ea172e6 in __bam_search () from /usr/lib64/libdb-4.5.so
#4  0x00002b507ea07e66 in ?? () from /usr/lib64/libdb-4.5.so
#5  0x00002b507ea08f07 in ?? () from /usr/lib64/libdb-4.5.so
#6  0x00002b507ea7aa3c in __db_c_get () from /usr/lib64/libdb-4.5.so
#7  0x00002b507ea837be in __db_c_get_pp () from /usr/lib64/libdb-4.5.so
#8  0x00000000004ade7a in bdb_id2entry (be=<value optimized out>, tid=<value
optimized out>, locker=25, id=2253, e=0x426825a8)
    at id2entry.c:131
#9  0x00000000004a60f2 in bdb_cache_find_id (op=0x42803660, tid=0x0, id=2253,
eip=0x428028c8, flag=2, locker=25, 
    lock=0x42802860) at cache.c:894
#10 0x0000000000489a67 in bdb_search (op=0x42803660, rs=0x42802ee0) at
search.c:683
#11 0x0000000000477492 in overlay_op_walk (op=0x42803660, rs=0x42802ee0,
which=op_search, oi=0x8d2d50, on=0x0)
    at backover.c:653
#12 0x00000000004779b5 in over_op_func (op=0x42803660, rs=0x42802ee0,
which=op_search) at backover.c:705
#13 0x0000000000471116 in syncrepl_entry (si=0x886250, op=0x42803660,
entry=0x9f86a8, modlist=0x428035c8, syncstate=1, 
    syncUUID=0x42803560, syncCSN=0x0) at syncrepl.c:1970
#14 0x0000000000472e5c in do_syncrep2 (op=0x42803660, si=0x886250) at
syncrepl.c:827
#15 0x00000000004746fc in do_syncrepl (ctx=<value optimized out>, arg=<value
optimized out>) at syncrepl.c:1207
#16 0x00000000004dcdf7 in ldap_int_thread_pool_wrapper (xpool=0x82dfe0) at
tpool.c:625
#17 0x00002b507f90d020 in start_thread () from /lib64/libpthread.so.0
#18 0x00002b507fbe6f8d in clone () from /lib64/libc.so.6
#19 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x2b508007d4a0 (LWP 597)):
#0  0x00002b507f90e576 in pthread_join () from /lib64/libpthread.so.0
#1  0x0000000000418412 in slapd_daemon () at daemon.c:2644
#2  0x0000000000407f1e in main (argc=8, argv=0x7fff2c2e7a18) at main.c:939
#0  0x00002b507f90f2f3 in pthread_mutex_lock () from /lib64/libpthread.so.0