Ticket #383 - usn + mmr = deletions are not replicated
https://fedorahosted.org/389/ticket/383
Resolves: Ticket #383
Bug Description: usn + mmr = deletions are not replicated
Reviewed by: mreynolds (Thanks!)
Branch: master
Fix Description: The problem was that because usn was creating a tombstone,
it was also setting the OP_FLAG_TOMBSTONE flag in the operation, which was
causing the operation to think it was deleting a tombstone. The fix is to
not set this flag, and instead have operations that delete tombstones to
set that flag explicitly when creating the delete op request.
In addition, the CSN for delete ops was not being logged - the usn bepostop
was deleting it, even when replication was being used. Previously the csn
was needed as a "trigger" to tell the ldbm_back_delete code to create a
tombstone rather than deleting the entry outright. Instead, use the
slapi_operation_get_replica_attr (pb, operation,
"nsds5ReplicaTombstonePurgeInterval,
&create_tombstone_entry)
to determine whether or not to create a tombstone entry. Both replication
and usn configure this, so if using one or both of those, tombstones will
be created, otherwise, not.
Platforms tested: RHEL6 x86_64, Fedora 17
Flag Day: no
Doc impact: no
(cherry picked from commit 73e077189820130c93e25e359d5935794dbbf3ee)