mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
Cleanup, treat modifyTimestamp specially too
This commit is contained in:
parent
b69b2d2f69
commit
b8db865c0a
@ -2096,6 +2096,7 @@ syncrepl_entry(
|
|||||||
op->o_time = slap_get_time();
|
op->o_time = slap_get_time();
|
||||||
op->ors_tlimit = SLAP_NO_LIMIT;
|
op->ors_tlimit = SLAP_NO_LIMIT;
|
||||||
op->ors_slimit = 1;
|
op->ors_slimit = 1;
|
||||||
|
op->ors_limit = NULL;
|
||||||
|
|
||||||
op->ors_attrs = slap_anlist_all_attributes;
|
op->ors_attrs = slap_anlist_all_attributes;
|
||||||
op->ors_attrsonly = 0;
|
op->ors_attrsonly = 0;
|
||||||
@ -2107,12 +2108,10 @@ syncrepl_entry(
|
|||||||
dni.new_entry = entry;
|
dni.new_entry = entry;
|
||||||
dni.modlist = modlist;
|
dni.modlist = modlist;
|
||||||
|
|
||||||
if ( limits_check( op, &rs_search ) == 0 ) {
|
rc = be->be_search( op, &rs_search );
|
||||||
rc = be->be_search( op, &rs_search );
|
Debug( LDAP_DEBUG_SYNC,
|
||||||
Debug( LDAP_DEBUG_SYNC,
|
"syncrepl_entry: %s be_search (%d)\n",
|
||||||
"syncrepl_entry: %s be_search (%d)\n",
|
si->si_ridtxt, rc, 0 );
|
||||||
si->si_ridtxt, rc, 0 );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( !BER_BVISNULL( &op->ors_filterstr ) ) {
|
if ( !BER_BVISNULL( &op->ors_filterstr ) ) {
|
||||||
slap_sl_free( op->ors_filterstr.bv_val, op->o_tmpmemctx );
|
slap_sl_free( op->ors_filterstr.bv_val, op->o_tmpmemctx );
|
||||||
@ -2589,6 +2588,8 @@ syncrepl_del_nonpresent(
|
|||||||
an[0].an_desc = slap_schema.si_ad_entryUUID;
|
an[0].an_desc = slap_schema.si_ad_entryUUID;
|
||||||
op->ors_attrs = an;
|
op->ors_attrs = an;
|
||||||
op->ors_slimit = SLAP_NO_LIMIT;
|
op->ors_slimit = SLAP_NO_LIMIT;
|
||||||
|
op->ors_tlimit = SLAP_NO_LIMIT;
|
||||||
|
op->ors_limit = NULL;
|
||||||
op->ors_attrsonly = 0;
|
op->ors_attrsonly = 0;
|
||||||
op->ors_filter = str2filter_x( op, si->si_filterstr.bv_val );
|
op->ors_filter = str2filter_x( op, si->si_filterstr.bv_val );
|
||||||
/* In multimaster, updates can continue to arrive while
|
/* In multimaster, updates can continue to arrive while
|
||||||
@ -2623,9 +2624,8 @@ syncrepl_del_nonpresent(
|
|||||||
}
|
}
|
||||||
op->o_nocaching = 1;
|
op->o_nocaching = 1;
|
||||||
|
|
||||||
if ( limits_check( op, &rs_search ) == 0 ) {
|
|
||||||
rc = be->be_search( op, &rs_search );
|
rc = be->be_search( op, &rs_search );
|
||||||
}
|
|
||||||
if ( SLAP_MULTIMASTER( op->o_bd )) {
|
if ( SLAP_MULTIMASTER( op->o_bd )) {
|
||||||
op->ors_filter = of;
|
op->ors_filter = of;
|
||||||
}
|
}
|
||||||
@ -3337,8 +3337,8 @@ dn_callback(
|
|||||||
* stays co-located with the other mod opattrs. But only
|
* stays co-located with the other mod opattrs. But only
|
||||||
* if we know there are other valid mods.
|
* if we know there are other valid mods.
|
||||||
*/
|
*/
|
||||||
if ( old->a_desc == slap_schema.si_ad_modifiersName &&
|
if ( dni->mods && ( old->a_desc == slap_schema.si_ad_modifiersName ||
|
||||||
dni->mods )
|
old->a_desc == slap_schema.si_ad_modifyTimestamp ))
|
||||||
attr_cmp( op, NULL, new, &modtail, &ml );
|
attr_cmp( op, NULL, new, &modtail, &ml );
|
||||||
else
|
else
|
||||||
attr_cmp( op, old, new, &modtail, &ml );
|
attr_cmp( op, old, new, &modtail, &ml );
|
||||||
|
Loading…
Reference in New Issue
Block a user