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

Re: Sync Replication searchbase muset be a suffix of a db?



----- Original Message ----- 
From: "Pierangelo Masarati" <ando@sys-net.it>
To: "ÃÂâÃÂâÃÂÅ" <luozhijian@huawei.com>
Cc: <ando@sys-net.it>; <openldap-software@OpenLDAP.org>
Sent: Saturday, April 30, 2005 12:41 AM
Subject: Re: Sync Replication searchbase muset be a suffix of a db?


> 
> >
> > provider:
> > suffix "o=my-domain,c=ZH "
> >
> > consumer :
> > Both search base is ou=test,ou=Department,o=my-domain,c=ZH
> > and ou=Department,o=my-domain,c=ZH,when ldapdelete in provider.Provider
> > will die.
> 
> >> > openldap 2.2.24 bdb4.2
> 
> With RE22, if the producer and the consumer have suffix "o=my-domain,c=ZH"
> and the consumer's searchBase is set to "ou=Department,o=my-domain,c=ZH",
> and one deletes -r the entry "o=my-domain,c=ZH", the producer hangs.
one delete the subentry of  searchbase in provider,such as "cn=ly,ou=test,ou=Department,o=my-domain,c=ZH",the provider also 
will hangs.


> 
> This is where it appears to be stuck:
> 
> (gdb) bt
> #0  0x420d2d57 in sched_yield () from /lib/i686/libc.so.6
> #1  0x400a095e in __os_yield () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #2  0x400248ee in __db_tas_mutex_lock ()
>    from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #3  0x4008db29 in __lock_get_internal ()
>    from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #4  0x4008ca65 in __lock_vec () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #5  0x40075772 in __db_lget () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #6  0x40032c39 in __bam_search () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #7  0x40029ca7 in __bam_c_search () from
> /usr/local/db-4.2.52/lib/libdb-4.2.so
> #8  0x40026e78 in __bam_c_get () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #9  0x4006ad42 in __db_c_get () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #10 0x40073509 in __db_c_get_pp () from /usr/local/db-4.2.52/lib/libdb-4.2.so
> #11 0x08122d50 in bdb_idl_fetch_key (be=0x0, db=0x8378508, tid=0x0,
>     key=0x40a661fc, ids=0x40aa65ec) at idl.c:519
> #12 0x0811f591 in bdb_dn2idl (op=0x837c1a0, e=0x40a665bc, ids=0x40aa65ec,
>     stack=0x40c28008) at dn2id.c:456
> #13 0x080e9b0e in bdb_do_search (op=0x8389238, rs=0x40b268cc, sop=0x837c1a0,
>     ps_e=0x83833f0, ps_type=2) at search.c:1661
> #14 0x0811e152 in bdb_delete (op=0x40b27214, rs=0x40b268cc) at delete.c:522
> #15 0x080ab949 in do_delete (op=0x40b27214, rs=0x40b268cc) at delete.c:230
> #16 0x08097193 in connection_operation (ctx=0x40b2694c, arg_v=0x40b27214)
>     at connection.c:1059
> #17 0x08163dcf in ldap_int_thread_pool_wrapper (xpool=0x40c28008)
>     at tpool.c:467
> #18 0x401cefef in pthread_start_thread () from /lib/i686/libpthread.so.0
> 
> Things go smooth if the searchBase in the consumer is equal to the suffix
> (but subtree deletion fails because of ITS#3385, fixed in HEAD.
> 
> In HEAD, it works just fine.
> 
> p.
> 
> -- 
> Pierangelo Masarati
> mailto:pierangelo.masarati@sys-net.it
> 
> 
>     SysNet - via Dossi,8 27100 Pavia Tel: +390382573859 Fax: +390382476497
>