Bug 678646 - Managed entry plug-in needs to ignore tombstone deletion
Summary: Managed entry plug-in needs to ignore tombstone deletion
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: 389
Classification: Retired
Component: Server - Plugins
Version: 1.2.7
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Nathan Kinder
QA Contact: Viktor Ashirov
URL:
Whiteboard:
Depends On:
Blocks: 639035 389_1.2.8 679210
TreeView+ depends on / blocked
 
Reported: 2011-02-18 18:23 UTC by Nathan Kinder
Modified: 2015-12-07 17:10 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 679210 (view as bug list)
Environment:
Last Closed: 2015-12-07 17:10:20 UTC
Embargoed:


Attachments (Terms of Use)
Patch (2.82 KB, patch)
2011-02-21 22:52 UTC, Nathan Kinder
nhosoi: review+
Details | Diff

Description Nathan Kinder 2011-02-18 18:23:44 UTC
The managed entry plug-in currently doesn't ignore operations tombstone entries.  If one is using replication and deletes an origin entry, then re-adds an origin entry with the same name, the associated managed entry will be deleted when the tombstone is cleaned up.  This results in an origin entry with no associated managed entry.

We need to make the managed entry delete post-op skip processing for tombstone entries.

Comment 1 Nathan Kinder 2011-02-21 22:52:45 UTC
Created attachment 480016 [details]
Patch

Comment 2 Nathan Kinder 2011-02-22 01:24:40 UTC
Pushed to master.  Thanks to Noriko for her review!

Counting objects: 13, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 1010 bytes, done.
Total 7 (delta 4), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/ds.git
   1b5ff01..59209af  master -> master

Comment 3 Amita Sharma 2011-04-29 08:28:11 UTC
1. Add an entry in master and check it should be replicated to slave.
ldapmodify -x -h localhost -p 20100 -D "cn=Directory Manager" -w Secret123 <<
EOF
dn: uid=amita,ou=people,dc=replsuffix,dc=com
changetype: add
objectClass: top
objectClass: person
objectClass: inetorgperson
sn: testkrbuser
cn: kkk testkrbuser
userPassword: redhat
EOF

[amsharma@rhel61-ds90-amita scripts]$ ldapsearch -h localhost -p 20100 -D
"cn=Directory Manager" -w Secret123 -b "dc=replsuffix,dc=com" | grep amita
# amita, People, replsuffix.com
dn: uid=amita,ou=People,dc=replsuffix,dc=com
uid: amita
[amsharma@rhel61-ds90-amita scripts]$ ldapsearch -h localhost -p 20102 -D
"cn=Directory Manager" -w Secret123 -b "dc=replsuffix,dc=com" | grep amita
# amita, People, replsuffix.com
dn: uid=amita,ou=People,dc=replsuffix,dc=com
uid: amita

2. Delete the entry from master and chk the slave

ldapdelete -x -h localhost -p 20100 -D "cn=Directory Manager" -w Secret123
"uid=amita,ou=people,dc=replsuffix,dc=com"
ldapsearch -h localhost -p 20100 -D "cn=Directory Manager" -w Secret123 -b
"dc=replsuffix,dc=com" | grep amita
ldapsearch -h localhost -p 20102 -D "cn=Directory Manager" -w Secret123 -b
"dc=replsuffix,dc=com" | grep amita

3. Repeat Step first.

[amsharma@rhel61-ds90-amita scripts]$ ldapmodify -x -h localhost -p 20100 -D
"cn=Directory Manager" -w Secret123 << EOF
> dn: uid=amita,ou=people,dc=replsuffix,dc=com
> changetype: add
> objectClass: top
> objectClass: person
> objectClass: inetorgperson
> sn: testkrbuser
> cn: kkk testkrbuser
> userPassword: redhat
> EOF
adding new entry "uid=amita,ou=people,dc=replsuffix,dc=com"

[amsharma@rhel61-ds90-amita scripts]$ ldapsearch -h localhost -p 20100 -D
"cn=Directory Manager" -w Secret123 -b "dc=replsuffix,dc=com" | grep amita
# amita, People, replsuffix.com
dn: uid=amita,ou=People,dc=replsuffix,dc=com
uid: amita
[amsharma@rhel61-ds90-amita scripts]$ ldapsearch -h localhost -p 20102 -D
"cn=Directory Manager" -w Secret123 -b "dc=replsuffix,dc=com" | grep amita
# amita, People, replsuffix.com
dn: uid=amita,ou=People,dc=replsuffix,dc=com
uid: amita

Bug is successfully VERIFIED.


Note You need to log in before you can comment on or make changes to this bug.