From b72d9b83688ef0874a54cfa0aa72bb4a1c0646ee Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Fri, 30 Sep 2011 00:09:01 -0700 Subject: [PATCH] ITS#7052 syncrepl deletes need a non-empty CSN Must not let the underlying DB generate its own. --- servers/slapd/syncrepl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 0c4bb5b978..af10aee043 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -2817,9 +2817,7 @@ syncrepl_entry( /* FIXME: op->o_csn is assumed to be * on the thread's slab; this needs * to be cleared ASAP. - * What happens if already present? */ - assert( BER_BVISNULL( &op->o_csn ) ); op->o_csn = a->a_vals[0]; freecsn = 0; } @@ -3160,6 +3158,9 @@ retry_modrdn:; op->o_req_ndn = dni.ndn; op->o_tag = LDAP_REQ_DELETE; op->o_bd = si->si_wbe; + if ( !syncCSN ) { + slap_queue_csn( op, si->si_syncCookie.ctxcsn ); + } rc = op->o_bd->be_delete( op, &rs_delete ); Debug( LDAP_DEBUG_SYNC, "syncrepl_entry: %s be_delete %s (%d)\n", -- 2.39.5