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

Re: Delete events not propogating with syncrepl



Hi,
  I am using openldap 2.4.9. Deleted entries do not get propagated to slave from master using syncrepl.
I had tried the similar use case in 2.4.8 and ran into the same issue. Is this a known issue in 2.4.9 ?
Any pointers would be helpful.

- Srinidhi.

On Tue, May 6, 2008 at 12:42 AM, Gavin Henry <ghenry@openldap.org> wrote:
Srinidhi Sharma wrote:
Hi Gavin,
 Here are the details .
Following logs were available at -d255 level.

user.ldif file
========
dn: cn=user19,ou=people,dc=example,dc=com
objectclass: inetOrgPerson
cn: user19
sn: user19-lastname1
uid: user19-user1-lastname1
userpassword: welcome1
carlicense: HISCAR 123
homephone: 555-111-2222
mail: user19@example.com <mailto:user19@example.com>

description: cool guy
ou: Human Resources


Master node log file snippet:
====================
 >>> dnPrettyNormal: <cn=user19,ou=people,dc=example,dc=com>
=> ldap_bv2dn(cn=user19,ou=people,dc=example,dc=com,0)
<= ldap_bv2dn(cn=user19,ou=people,dc=example,dc=com)=0
=> ldap_dn2bv(272)
<= ldap_dn2bv(cn=user19,ou=people,dc=example,dc=com)=0
=> ldap_dn2bv(272)
<= ldap_dn2bv(cn=user19,ou=people,dc=example,dc=com)=0
<<< dnPrettyNormal: <cn=user19,ou=people,dc=example,dc=com>, <cn=user19,ou=people,dc=example,dc=com>
bdb_dn2entry("cn=user19,ou=people,dc=example,dc=com")
=> bdb_entry_get: ndn: "cn=user19,ou=people,dc=example,dc=com"
=> bdb_entry_get: oc: "(null)", at: "(null)"
bdb_dn2entry("cn=user19,ou=people,dc=example,dc=com")
=> bdb_entry_get: found entry: "cn=user19,ou=people,dc=example,dc=com"
bdb_entry_get: rc=0
==> bdb_delete: cn=user19,ou=people,dc=example,dc=com
bdb_dn2entry("cn=user19,ou=people,dc=example,dc=com")
=> access_allowed: delete access to "ou=people,dc=example,dc=com" "children" requested
<= root access granted
=> access_allowed: delete access granted by manage(=mwrscxd)
=> access_allowed: delete access to "cn=user19,ou=people,dc=example,dc=com" "entry" requested
<= root access granted
=> access_allowed: delete access granted by manage(=mwrscxd)
=> bdb_dn2id_delete 0x11: "cn=user19,ou=people,dc=example,dc=com"
bdb_idl_delete_key: 11 @cn=user19,ou=people,dc=example,dc=com
bdb_idl_delete_key: 11 %ou=people,dc=example,dc=com
bdb_idl_delete_key: 11 @ou=people,dc=example,dc=com
<= bdb_dn2id_delete 0x11: 0
=> index_entry_del( 17, "cn=user19,ou=people,dc=example,dc=com" )
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [860433ad]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [0250ebcb]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [8c70ccf9]
bdb_idl_delete_key: 11 [860433ad]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [0250ebcb]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [8c70ccf9]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [0096defd]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11 [e8d6b696]
<= key_change 0
=> key_change(DELETE,11)
bdb_idl_delete_key: 11
<= key_change 0
<= index_entry_del( 17, "cn=user19,ou=people,dc=example,dc=com" ) success
====> bdb_cache_delete( 17 )
bdb_delete: deleted id=00000011 dn="cn=user19,ou=people,dc=example,dc=com"
send_ldap_result: conn=1 op=15 p=3
send_ldap_result: err=0 matched="" text=""
send_ldap_response: msgid=16 tag=107 err=0
ber_flush2: 14 bytes to sd 12
 0000:  30 0c 02 01 10 6b 07 0a  01 00 04 00 04 00         0....k........
ldap_write: want=14, written=14
 0000:  30 0c 02 01 10 6b 07 0a  01 00 04 00 04 00         0....k........
daemon: activity on 1 descriptor
daemon: activity on: 12r
daemon: read activity on 12
daemon: select: listen=7 active_threads=0 tvp=NULL
connection_get(12)
connection_get(12): got connid=1
connection_read(12): checking for input on id=1


Slave log snippet: ( I didnt see any log msg for delete entry in the slave, so wasnt sure what to cut/paste, so just cut/pasting the user addition log msg)
=============
ber_scanf fmt ({mW}) ber:
ber_dump: buf=5c5780 ptr=5c5892 end=5c58ca len=56
 0000:  30 36 04 08 65 6e 74 72  79 43 53 4e 31 2a 04 28   06..entryCSN1*.(  0010:  32 30 30 38 30 35 30 32  30 39 34 33 34 36 2e 38   20080502094346.8  0020:  38 39 39 34 36 5a 23 30  30 30 30 30 30 23 30 30   89946Z#000000#00  0030:  30 23 30 30 30 30 30 30                            0#000000         => bdb_search
bdb_dn2entry("dc=example,dc=com")
=> access_allowed: search access to "dc=example,dc=com" "entry" requested
<= root access granted
=> access_allowed: search access granted by manage(=mwrscxd)
search_candidates: base="dc=example,dc=com" (0x00000001) scope=2
=> bdb_dn2idl("dc=example,dc=com")
=> bdb_filter_candidates
   AND
=> bdb_list_candidates 0xa0
=> bdb_filter_candidates
   EQUALITY
=> bdb_equality_candidates (entryUUID)
=> key_read
bdb_idl_fetch_key: [e8d6b696]
<= bdb_index_read: failed (-30989)
<= bdb_equality_candidates: id=0, first=0, last=0
<= bdb_filter_candidates: id=0 first=0 last=0
<= bdb_list_candidates: id=0 first=1 last=0
<= bdb_filter_candidates: id=0 first=1 last=0
bdb_search_candidates: id=0 first=1 last=0
bdb_search: no candidates
send_ldap_result: conn=-1 op=0 p=3
send_ldap_result: err=0 matched="" text=""
==> bdb_add: cn=user19,ou=people,dc=example,dc=com
bdb_dn2entry("cn=user19,ou=people,dc=example,dc=com")
=> bdb_dn2id("cn=user19,ou=people,dc=example,dc=com")
<= bdb_dn2id: get failed: DB_NOTFOUND: No matching key/data pair found (-30989)
=> access_allowed: add access to "ou=people,dc=example,dc=com" "children" requested
<= root access granted
=> access_allowed: add access granted by manage(=mwrscxd)
=> access_allowed: add access to "cn=user19,ou=people,dc=example,dc=com" "entry" requested
<= root access granted
=> access_allowed: add access granted by manage(=mwrscxd)
=> bdb_dn2id_add 0x11: "cn=user19,ou=people,dc=example,dc=com"
bdb_idl_insert_key: 11 %ou=people,dc=example,dc=com
bdb_idl_insert_key: 11 @ou=people,dc=example,dc=com
<= bdb_dn2id_add 0x11: 0
=> index_entry_add( 17, "cn=user19,ou=people,dc=example,dc=com" )
=> key_change(ADD,11)
bdb_idl_insert_key: 11 [860433ad]
<= key_change 0
=> key_change(ADD,11)
bdb_idl_insert_key: 11 [0250ebcb]
<= key_change 0
=> key_change(ADD,11)
bdb_idl_insert_key: 11 [8c70ccf9]
<= key_change 0
=> key_change(ADD,11)
bdb_idl_insert_key: 11 [0096defd]
<= key_change 0
=> key_change(ADD,11)
bdb_idl_insert_key: 11 [e8d6b696]
<= key_change 0
=> key_change(ADD,11)
bdb_idl_insert_key: 11
<= key_change 0
<= index_entry_add( 17, "cn=user19,ou=people,dc=example,dc=com" ) success
=> entry_encode(0x00000011): cn=user19,ou=people,dc=example,dc=com
bdb_add: added id=00000011 dn="cn=user19,ou=people,dc=example,dc=com"
send_ldap_result: conn=-1 op=0 p=3
send_ldap_result: err=0 matched="" text=""
ldap_msgfree
ldap_result ld 5b9630 msgid 2
wait4msg ld 5b9630 msgid 2 (infinite timeout)
wait4msg continue ld 5b9630 msgid 2 all 0
** ld 5b9630 Connections:

- Srinidhi
On Wed, Apr 30, 2008 at 7:53 PM, Gavin Henry <ghenry@openldap.org <mailto:ghenry@openldap.org>> wrote:

   Srinidhi Sharma wrote:

       Hi,
        I am using open ldap 2.4.8 with Berkeley DB 4.6.21 ( I haven't
       applied any patch to either open ldap or to Berkeley DB).

       When I configure a slave process, the addition and modification
       of users get propogated from master to slave. But the deletion
       of users from the master do not get propogated.  the slapd logs
       in the master show that user is getting deleted.


   Logs needed and an example user please ;-)



       I saw a old note
       "http://www.openldap.org/lists/openldap-bugs/200409/msg00001.html"
       which listed similar issue.


   Not relevant as that's for 2.2.

   --    Kind Regards,

   Gavin Henry.
   OpenLDAP Engineering Team.

   E ghenry@OpenLDAP.org

   Community developed LDAP software.

   http://www.openldap.org/project/

   Suretec Systems is a limited company registered in Scotland. Registered
   number: SC258005. Registered office: 13 Whiteley Well Place, Inverurie,
   Aberdeenshire, AB51 4FP.




--
Thanks,
Srinidhi

I'd wait for 2.4.9 as there are lots of syncrepl fixes..coming soon.


--
Kind Regards,

Gavin Henry.
OpenLDAP Engineering Team.

E ghenry@OpenLDAP.org

Community developed LDAP software.

http://www.openldap.org/project/

Suretec Systems is a limited company registered in Scotland. Registered
number: SC258005. Registered office: 13 Whiteley Well Place, Inverurie,
Aberdeenshire, AB51 4FP.



--
Thanks,
Srinidhi