Pierangelo Masarati wrote:
I ran 30 times test045 with HEAD and got no failures. Then re24 failed after 44 runs with the backtrace below (identical to the previous ones).
#0 0x0090f402 in __kernel_vsyscall () (gdb) bt #0 0x0090f402 in __kernel_vsyscall () #1 0x00c9ad20 in raise () from /lib/libc.so.6 #2 0x00c9c631 in abort () from /lib/libc.so.6 #3 0x00c9416b in __assert_fail () from /lib/libc.so.6 #4 0x08219421 in ldap_pvt_runqueue_remove (rq=0x83521c0, entry=0x9214328) at ../../../ldap-2.4-src/libraries/libldap_r/rq.c:92 #5 0x080f567a in do_syncrepl (ctx=0xb4bfc1d0, arg=0x9214328) at ../../../ldap-2.4-src/servers/slapd/syncrepl.c:1402 #6 0x08085a71 in connection_read_thread (ctx=0xb4bfc1d0, argv=0xa) at ../../../ldap-2.4-src/servers/slapd/connection.c:1225 #7 0x082188a5 in ldap_int_thread_pool_wrapper (xpool=0x91e3cd8) at ../../../ldap-2.4-src/libraries/libldap_r/tpool.c:663 #8 0x00deb46b in start_thread () from /lib/libpthread.so.0 #9 0x00d42dbe in clone () from /lib/libc.so.6
So I fear the problem is still there.
As far as I understand, that assertion seems to be too strict. Apparently, someone else already removed the task. Perhaps, all calls to runqueue should be preceded by a check about the existence of the task itself. An excerpt of that slapd instance's logs indicates:
slap_queue_csn: queing 0x92a30c8 20090124113556.050820Z#000000#000#000000 do_syncrep2: rid=001 (-1) Can't contact LDAP server slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com " ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 retrying (3 retries left) connection_read(10): no connection! ... # hundreds of the above connection_read(10): no connection! slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com " ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 retrying (2 retries left) connection_read(10): no connection! ... # hundreds of the above ... connection_read(10): no connection! slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com" ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 retrying (2 retries left) slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com" ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 retrying (1 retries left) slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com" ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 retrying slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com" ldap_sasl_bind_s failed (-1) do_syncrepl: rid=001 quitting slap_client_connect: URI=ldap://localhost:9011/ DN="cn=manager,dc=example,dc=com" ldap_sasl_bind_s failed (-1) slapd: ../../../ldap-2.4-src/libraries/libldap_r/rq.c:92: ldap_pvt_runqueue_remove: Assertion `e == entry' failed.
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it ----------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Fax: +39 0382 476497 Email: ando@sys-net.it -----------------------------------