Skip to content
Snippets Groups Projects
Commit 559b7464 authored by Howard Chu's avatar Howard Chu
Browse files

Avoid gratuitous reindexing of cn and objectclass in syncrepl_updateCookie

parent 5c1c0902
No related branches found
No related tags found
No related merge requests found
......@@ -1762,21 +1762,24 @@ syncrepl_updateCookie(
*modtail = mod;
modtail = &mod->sml_next;
if ( scbva[0].bv_val ) ch_free( scbva[0].bv_val );
ber_dupbv( &scbva[0], &si->si_syncCookie.octet_str[0] );
mod = (Modifications *) ch_calloc( 1, sizeof( Modifications ));
mod->sml_op = LDAP_MOD_REPLACE;
mod->sml_desc = slap_schema.si_ad_syncreplCookie;
mod->sml_desc = slap_schema.si_ad_subtreeSpecification;
mod->sml_type = mod->sml_desc->ad_cname;
mod->sml_values = scbva;
mod->sml_values = ssbva;
*modtail = mod;
modtail = &mod->sml_next;
/* Keep this last, so we can avoid touching the previous
* attributes unnecessarily.
*/
if ( scbva[0].bv_val ) ch_free( scbva[0].bv_val );
ber_dupbv( &scbva[0], &si->si_syncCookie.octet_str[0] );
mod = (Modifications *) ch_calloc( 1, sizeof( Modifications ));
mod->sml_op = LDAP_MOD_REPLACE;
mod->sml_desc = slap_schema.si_ad_subtreeSpecification;
mod->sml_desc = slap_schema.si_ad_syncreplCookie;
mod->sml_type = mod->sml_desc->ad_cname;
mod->sml_values = ssbva;
mod->sml_values = scbva;
*modtail = mod;
modtail = &mod->sml_next;
......@@ -1841,7 +1844,8 @@ syncrepl_updateCookie(
/* update persistent cookie */
update_cookie_retry:
op->o_tag = LDAP_REQ_MODIFY;
op->orm_modlist = modlist;
/* Just modify the cookie value, not the entire entry */
op->orm_modlist = mod;
rc = be->be_modify( op, &rs_modify );
if ( rs_modify.sr_err != LDAP_SUCCESS ) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment