c3dc979 Ticket #383 - usn + mmr = deletions are not replicated

Authored and Committed by rmeggins 7 years ago
    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)