From 3716245fec992759bb54013b721ce2c6f37ccb8c Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount Date: Mon, 20 Jul 2020 22:49:48 +0000 Subject: [PATCH] Issue#8511 - Update documentation and configs to correctly use multiprovider --- doc/guide/admin/aspell.en.pws | 6 +- doc/guide/admin/backends.sdf | 2 +- doc/guide/admin/intro.sdf | 5 +- doc/guide/admin/maintenance.sdf | 2 +- doc/guide/admin/replication.sdf | 107 +++++++++--------- doc/guide/images/src/dual_dc.svg | 6 +- doc/man/man5/slapd-config.5 | 4 +- doc/man/man5/slapd.conf.5 | 6 +- servers/slapd/bconfig.c | 17 +-- servers/slapd/syncrepl.c | 2 +- .../regressions/its8444/slapd-provider1.ldif | 2 +- .../regressions/its8444/slapd-provider2.ldif | 2 +- .../regressions/its8444/slapd-provider3.ldif | 2 +- .../regressions/its8444/slapd-provider4.ldif | 2 +- tests/data/regressions/its8752/slapd.conf.mpr | 2 +- .../regressions/its8800/slapd-provider1.ldif | 2 +- .../regressions/its8800/slapd-provider2.ldif | 2 +- .../regressions/its8800/slapd-provider3.ldif | 2 +- .../regressions/its8800/slapd-provider4.ldif | 2 +- tests/scripts/test050-syncrepl-multiprovider | 10 +- tests/scripts/test059-consumer-config | 6 +- tests/scripts/test063-delta-multiprovider | 10 +- ...s => test069-delta-multiprovider-starttls} | 10 +- ...daps => test070-delta-multiprovider-ldaps} | 10 +- 24 files changed, 114 insertions(+), 107 deletions(-) rename tests/scripts/{test069-delta-multimaster-starttls => test069-delta-multiprovider-starttls} (99%) rename tests/scripts/{test070-delta-multimaster-ldaps => test070-delta-multiprovider-ldaps} (99%) diff --git a/doc/guide/admin/aspell.en.pws b/doc/guide/admin/aspell.en.pws index 43ba9c2724..9c58281edf 100644 --- a/doc/guide/admin/aspell.en.pws +++ b/doc/guide/admin/aspell.en.pws @@ -639,8 +639,8 @@ ldapexop objectIdentifier objectidentifier deallocators -mirrormode -MirrorMode +multiprovider +MultiProvider loopDetect SIGHUP authMethodNotSupported @@ -1543,7 +1543,7 @@ builtin matcheduid Locator ldapmaster -olcMirrorMode +olcMultiProvider libldap refreshDeletes aliasProblem diff --git a/doc/guide/admin/backends.sdf b/doc/guide/admin/backends.sdf index 1837c1ae6d..802b516e0d 100644 --- a/doc/guide/admin/backends.sdf +++ b/doc/guide/admin/backends.sdf @@ -86,7 +86,7 @@ server is moved to the head, so that it will be first contacted the next time a connection needs be created. This feature can be used to provide a form of load balancing when using -{{SECT: MirrorMode replication}}. +{{SECT: Mirror mode replication}}. H3: Further Information diff --git a/doc/guide/admin/intro.sdf b/doc/guide/admin/intro.sdf index dbfd3333da..ee9ce43733 100644 --- a/doc/guide/admin/intro.sdf +++ b/doc/guide/admin/intro.sdf @@ -435,7 +435,10 @@ replication scheme is vital in high-volume environments where a single {{slapd}} installation just doesn't provide the necessary availability or reliability. For extremely demanding environments where a single point of failure is not acceptable, {{multi-provider}} replication -is also available. {{slapd}} includes support for {{LDAP Sync}}-based +is also available. With {{multi-provider}} replication two or more nodes can +accept write operations allowing for redundancy at the provider level. + +{{slapd}} includes support for {{LDAP Sync}}-based replication. {{B:Proxy Cache}}: {{slapd}} can be configured as a caching diff --git a/doc/guide/admin/maintenance.sdf b/doc/guide/admin/maintenance.sdf index 17d234fb86..f5e9007b3f 100644 --- a/doc/guide/admin/maintenance.sdf +++ b/doc/guide/admin/maintenance.sdf @@ -87,7 +87,7 @@ type are: .{{S: }} +{{B: Start the server}} -Obviously this doesn't cater for any complicated deployments like {{SECT: MirrorMode}} or {{SECT: N-Way Multi-Provider}}, +Obviously this doesn't cater for any complicated deployments like {{SECT: Mirror mode}} or {{SECT: N-Way Multi-Provider}}, but following the above sections and using either commercial support or community support should help. Also check the {{SECT: Troubleshooting}} section. diff --git a/doc/guide/admin/replication.sdf b/doc/guide/admin/replication.sdf index a31148e543..26f97717a2 100644 --- a/doc/guide/admin/replication.sdf +++ b/doc/guide/admin/replication.sdf @@ -13,16 +13,17 @@ a {{master}} server and some number of {{slave}} servers. A master accepted directory updates from other clients, and a slave only accepted updates from a (single) master. The replication structure was rigidly defined and any particular database could only fulfill -a single role, either master or slave. +a single role, either master or slave. Another historic term introduced +with OpenLDAP 2.4 was multimaster. As OpenLDAP now supports a wide variety of replication topologies, these -terms have been deprecated in favor of {{provider}} and -{{consumer}}: A provider replicates directory updates to consumers; -consumers receive replication updates from providers. Unlike the -rigidly defined master/slave relationships, provider/consumer roles -are quite fluid: replication updates received in a consumer can be -further propagated by that consumer to other servers, so a consumer -can also act simultaneously as a provider. Also, a consumer need not +terms have been deprecated in favor of {{provider}}/{{multi-provider}} and +{{consumer}}: A provider can accept external write operations and make them +available for retrieval by consumers; consumers request replication updates from +providers. Unlike the rigidly defined master/slave relationships, +provider/consumer roles are quite fluid: replication updates received in a +consumer can be further propagated by that consumer to other servers, so a +consumer can also act simultaneously as a provider. Also, a consumer need not be an actual LDAP server; it may be just an LDAP client. The following sections will describe the replication technology and @@ -392,11 +393,11 @@ writes to the clients that are partitioned from the single provider For configuration, please see the {{SECT:N-Way Multi-Provider}} section below -H3: MirrorMode replication +H3: Mirror mode replication -MirrorMode is a hybrid configuration that provides all of the consistency +Mirror mode is a hybrid configuration that provides all of the consistency guarantees of single-provider replication, while also providing the high -availability of multi-provider. In MirrorMode two providers are set up to +availability of multi-provider. In Mirror mode two providers are set up to replicate from each other (as a multi-provider configuration), but an external frontend is employed to direct all writes to only one of the two servers. The second provider will only be used for writes if @@ -405,7 +406,7 @@ directing all writes to the second provider. When a crashed provider is repaired and restarted it will automatically catch up to any changes on the running provider and resync. -H4: Arguments for MirrorMode +H4: Arguments for Mirror mode * Provides a high-availability (HA) solution for directory writes (replicas handle reads) * As long as one provider is operational, writes can safely be accepted @@ -414,16 +415,16 @@ can be ready to take over (hot standby) * Syncrepl also allows the provider nodes to re-synchronize after any downtime -H4: Arguments against MirrorMode +H4: Arguments against Mirror mode -* MirrorMode is not what is termed as a Multi-Provider solution. This is because +* Mirror mode is not what is termed as a Multi-Provider solution. This is because writes have to go to just one of the mirror nodes at a time -* MirrorMode can be termed as Active-Active Hot-Standby, therefore an external +* Mirror mode can be termed as Active-Active Hot-Standby, therefore an external server (slapd in proxy mode) or device (hardware load balancer) is needed to manage which provider is currently active * Backups are managed slightly differently -For configuration, please see the {{SECT:MirrorMode}} section below +For configuration, please see the {{SECT:Mirror mode}} section below H3: Syncrepl Proxy Mode @@ -432,7 +433,7 @@ While the LDAP Sync protocol supports both pull- and push-based replication, the push mode (refreshAndPersist) must still be initiated from the consumer before the provider can begin pushing changes. In some network configurations, particularly where firewalls restrict the direction in which connections -can be made, a provider-initiated push mode may be needed. +can be made, a provider-initiated push mode may be needed. This mode can be configured with the aid of the LDAP Backend ({{SECT: Backends}} and {{slapd-ldap(8)}}). Instead of running the @@ -789,8 +790,8 @@ Now we setup the first Provider Node (replace $URI1, $URI2 and $URI3 etc. with y > credentials=secret searchbase="cn=config" type=refreshAndPersist > retry="5 5 300 5" timeout=1 > - -> add: olcMirrorMode -> olcMirrorMode: TRUE +> add: olcMultiProvider +> olcMultiProvider: TRUE Now start up the provider and a consumer/s, also add the above LDIF to the first consumer, second consumer etc. It will then replicate {{B:cn=config}}. You now have N-Way Multi-Provider on the config database. @@ -814,7 +815,7 @@ We still have to replicate the actual data, not just the config, so add to the p > olcSyncRepl: rid=006 provider=$URI3 binddn="$MANAGERDN" bindmethod=simple > credentials=$PASSWD searchbase="$BASEDN" type=refreshOnly > interval=00:00:00:10 retry="5 5 300 5" timeout=1 -> olcMirrorMode: TRUE +> olcMultiProvider: TRUE > > dn: olcOverlay=syncprov,olcDatabase={1}${BACKEND},cn=config > changetype: add @@ -831,15 +832,15 @@ directives are the URLs of the servers from which to replicate. These must exactly match the URLs {{slapd}} listens on ({{-h}} in {{SECT:Command-Line Options}}). Otherwise slapd may attempt to replicate from itself, causing a loop. -H3: MirrorMode +H3: Mirror mode -MirrorMode configuration is actually very easy. If you have ever setup a normal +Mirror mode configuration is actually very easy. If you have ever setup a normal slapd syncrepl provider, then the only change is the following two directives: -> mirrormode on +> multiprovider on > serverID 1 -Note: You need to make sure that the {{serverID}} of each mirror node is +Note: You need to make sure that the {{serverID}} of each provider node is different and add it as a global configuration option. H4: Mirror Node Configuration @@ -850,45 +851,45 @@ The first step is to configure the syncrepl provider the same as in the Here's a specific cut down example using {{SECT:LDAP Sync Replication}} in {{refreshAndPersist}} mode: -MirrorMode node 1: +Mirror mode node 1: > # Global section > serverID 1 > # database section > -> # syncrepl directive -> syncrepl rid=001 -> provider=ldap://ldap-sid2.example.com -> bindmethod=simple -> binddn="cn=mirrormode,dc=example,dc=com" -> credentials=mirrormode -> searchbase="dc=example,dc=com" -> schemachecking=on -> type=refreshAndPersist -> retry="60 +" +> # syncrepl directive +> syncrepl rid=001 +> provider=ldap://ldap-sid2.example.com +> bindmethod=simple +> binddn="cn=mirrormode,dc=example,dc=com" +> credentials=mirrormode +> searchbase="dc=example,dc=com" +> schemachecking=on +> type=refreshAndPersist +> retry="60 +" > -> mirrormode on +> multiprovider on -MirrorMode node 2: +Mirror mode node 2: > # Global section > serverID 2 > # database section > -> # syncrepl directive -> syncrepl rid=001 -> provider=ldap://ldap-sid1.example.com -> bindmethod=simple -> binddn="cn=mirrormode,dc=example,dc=com" -> credentials=mirrormode -> searchbase="dc=example,dc=com" -> schemachecking=on -> type=refreshAndPersist -> retry="60 +" -> -> mirrormode on +> # syncrepl directive +> syncrepl rid=001 +> provider=ldap://ldap-sid1.example.com +> bindmethod=simple +> binddn="cn=mirrormode,dc=example,dc=com" +> credentials=mirrormode +> searchbase="dc=example,dc=com" +> schemachecking=on +> type=refreshAndPersist +> retry="60 +" +> +> multiprovider on -It's simple really; each MirrorMode node is setup {{B:exactly}} the same, except +It's simple really; each Mirror mode node is setup {{B:exactly}} the same, except that the {{serverID}} is unique, and each consumer is pointed to the other server. @@ -899,8 +900,8 @@ dedicated proxy software, 2. using a Back-LDAP proxy as a syncrepl provider A typical enterprise example might be: -!import "dual_dc.png"; align="center"; title="MirrorMode Enterprise Configuration" -FT[align="Center"] Figure X.Y: MirrorMode in a Dual Data Center Configuration +!import "dual_dc.png"; align="center"; title="Mirror mode Enterprise Configuration" +FT[align="Center"] Figure X.Y: Mirror mode in a Dual Data Center Configuration H5: Normal Consumer Configuration @@ -908,7 +909,7 @@ This is exactly the same as the {{SECT:Set up the consumer slapd}} section. It can either setup in normal {{SECT:syncrepl replication}} mode, or in {{SECT:delta-syncrepl replication}} mode. -H4: MirrorMode Summary +H4: Mirror mode Summary You will now have a directory architecture that provides all of the consistency guarantees of single-provider replication, while also providing the diff --git a/doc/guide/images/src/dual_dc.svg b/doc/guide/images/src/dual_dc.svg index e00852e73b..ebd7a969cf 100755 --- a/doc/guide/images/src/dual_dc.svg +++ b/doc/guide/images/src/dual_dc.svg @@ -5142,7 +5142,7 @@ x="96.974648" y="113.75929" style="font-family:Arial;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;font-size:18px;text-anchor:start;text-align:start;writing-mode:lr;line-height:125%" />MirrorMode 1 Mirror mode 1 MirrorMode 2 Mirror mode 2 Each LB points tothe same MirrorModethe same Mirror modeNode at any time. diff --git a/doc/man/man5/slapd-config.5 b/doc/man/man5/slapd-config.5 index 9ccec808aa..1cb77421fd 100644 --- a/doc/man/man5/slapd-config.5 +++ b/doc/man/man5/slapd-config.5 @@ -1623,8 +1623,8 @@ switch. Specifies the maximum number of aliases to dereference when trying to resolve an entry, used to avoid infinite alias loops. The default is 15. .TP -.B olcMirrorMode: TRUE | FALSE -This option puts a consumer database into "mirror" mode. Update +.B olcMultiProvider: TRUE | FALSE +This option puts a consumer database into Multi-Provider mode. Update operations will be accepted from any user, not just the updatedn. The database must already be configured as syncrepl consumer before this keyword may be set. This mode also requires a diff --git a/doc/man/man5/slapd.conf.5 b/doc/man/man5/slapd.conf.5 index b02bf02c7c..04b2fdd87b 100644 --- a/doc/man/man5/slapd.conf.5 +++ b/doc/man/man5/slapd.conf.5 @@ -1566,14 +1566,14 @@ by means of the RFC 4533 LDAP Content Synchronization protocol Specifies the maximum number of aliases to dereference when trying to resolve an entry, used to avoid infinite alias loops. The default is 15. .TP -.B mirrormode on | off -This option puts a consumer database into "mirror" mode. Update +.B multiprovider on | off +This option puts a consumer database into Multi-Provider mode. Update operations will be accepted from any user, not just the updatedn. The database must already be configured as a syncrepl consumer before this keyword may be set. This mode also requires a .B serverID (see above) to be configured. -By default, mirrormode is off. +By default, multiprovider is off. .TP .B monitoring on | off This option enables database-specific monitoring in the entry related diff --git a/servers/slapd/bconfig.c b/servers/slapd/bconfig.c index 93ef9c7ac4..ead975b3be 100644 --- a/servers/slapd/bconfig.c +++ b/servers/slapd/bconfig.c @@ -184,7 +184,7 @@ enum { CFG_SSTR_IF_MAX, CFG_SSTR_IF_MIN, CFG_TTHREADS, - CFG_MIRRORMODE, + CFG_MULTIPROVIDER, CFG_HIDDEN, CFG_MONITORING, CFG_SERVERID, @@ -473,8 +473,8 @@ static ConfigTable config_back_cf_table[] = { &config_generic, "( OLcfgDbAt:0.6 NAME 'olcMaxDerefDepth' " "EQUALITY integerMatch " "SYNTAX OMsInteger SINGLE-VALUE )", NULL, NULL }, - { "mirrormode", "on|off", 2, 2, 0, ARG_DB|ARG_ON_OFF|ARG_MAGIC|CFG_MIRRORMODE, - &config_generic, "( OLcfgDbAt:0.16 NAME 'olcMirrorMode' " + { "multiprovider", "on|off", 2, 2, 0, ARG_DB|ARG_ON_OFF|ARG_MAGIC|CFG_MULTIPROVIDER, + &config_generic, "( OLcfgDbAt:0.16 NAME ( 'olcMultiProvider' 'olcMirrorMode' ) " "EQUALITY booleanMatch " "SYNTAX OMsBoolean SINGLE-VALUE )", NULL, NULL }, { "moduleload", "file", 2, 0, 0, @@ -892,6 +892,9 @@ static ConfigTable config_back_cf_table[] = { &global_writetimeout, "( OLcfgGlAt:88 NAME 'olcWriteTimeout' " "EQUALITY integerMatch " "SYNTAX OMsInteger SINGLE-VALUE )", NULL, NULL }, + /* Legacy keywords */ + { "mirrormode", "on|off", 2, 2, 0, ARG_DB|ARG_ON_OFF|ARG_MAGIC|CFG_MULTIPROVIDER, + &config_generic, NULL, NULL, NULL }, { NULL, NULL, 0, 0, 0, ARG_IGNORED, NULL, NULL, NULL, NULL } }; @@ -981,7 +984,7 @@ static ConfigOCs cf_ocs[] = { "olcReplicaArgsFile $ olcReplicaPidFile $ olcReplicationInterval $ " "olcReplogFile $ olcRequires $ olcRestrict $ olcRootDN $ olcRootPW $ " "olcSchemaDN $ olcSecurity $ olcSizeLimit $ olcSyncUseSubentry $ olcSyncrepl $ " - "olcTimeLimit $ olcUpdateDN $ olcUpdateRef $ olcMirrorMode $ " + "olcTimeLimit $ olcUpdateDN $ olcUpdateRef $ olcMultiProvider $ " "olcMonitoring $ olcExtraAttrs ) )", Cft_Database, NULL, cfAddDatabase }, { "( OLcfgGlOc:5 " @@ -1322,7 +1325,7 @@ config_generic(ConfigArgs *c) { case CFG_SYNC_SUBENTRY: c->value_int = (SLAP_SYNC_SUBENTRY(c->be) != 0); break; - case CFG_MIRRORMODE: + case CFG_MULTIPROVIDER: if ( SLAP_SHADOW(c->be)) c->value_int = (SLAP_MULTIPROVIDER(c->be) != 0); else @@ -1429,7 +1432,7 @@ config_generic(ConfigArgs *c) { snprintf(c->log, sizeof( c->log ), "change requires slapd restart"); break; - case CFG_MIRRORMODE: + case CFG_MULTIPROVIDER: SLAP_DBFLAGS(c->be) &= ~SLAP_DBFLAG_MULTI_SHADOW; if(SLAP_SHADOW(c->be)) SLAP_DBFLAGS(c->be) |= SLAP_DBFLAG_SINGLE_SHADOW; @@ -2270,7 +2273,7 @@ sortval_reject: SLAP_DBFLAGS(c->be) &= ~SLAP_DBFLAG_LASTBIND; break; - case CFG_MIRRORMODE: + case CFG_MULTIPROVIDER: if(c->value_int && !SLAP_SHADOW(c->be)) { snprintf( c->cr_msg, sizeof( c->cr_msg ), "<%s> database is not a shadow", c->argv[0] ); diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 3622bb1ff7..a5b50ab904 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -6503,7 +6503,7 @@ add_syncrepl( rc = -1; } } else { - /* mirrormode still needs to see this flag in tool mode */ + /* multiprovider still needs to see this flag in tool mode */ rc = config_sync_shadow( c ) ? -1 : 0; } ldap_free_urldesc( lud ); diff --git a/tests/data/regressions/its8444/slapd-provider1.ldif b/tests/data/regressions/its8444/slapd-provider1.ldif index cc18d7d476..477da97231 100644 --- a/tests/data/regressions/its8444/slapd-provider1.ldif +++ b/tests/data/regressions/its8444/slapd-provider1.ldif @@ -61,7 +61,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8444/slapd-provider2.ldif b/tests/data/regressions/its8444/slapd-provider2.ldif index 3b17593400..e418b75cf1 100644 --- a/tests/data/regressions/its8444/slapd-provider2.ldif +++ b/tests/data/regressions/its8444/slapd-provider2.ldif @@ -61,7 +61,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI1@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8444/slapd-provider3.ldif b/tests/data/regressions/its8444/slapd-provider3.ldif index 689a23be15..e63fe186ad 100644 --- a/tests/data/regressions/its8444/slapd-provider3.ldif +++ b/tests/data/regressions/its8444/slapd-provider3.ldif @@ -61,7 +61,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8444/slapd-provider4.ldif b/tests/data/regressions/its8444/slapd-provider4.ldif index 8359f9f9e5..a76a573715 100644 --- a/tests/data/regressions/its8444/slapd-provider4.ldif +++ b/tests/data/regressions/its8444/slapd-provider4.ldif @@ -61,7 +61,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8752/slapd.conf.mpr b/tests/data/regressions/its8752/slapd.conf.mpr index cf088baded..99a8599b23 100644 --- a/tests/data/regressions/its8752/slapd.conf.mpr +++ b/tests/data/regressions/its8752/slapd.conf.mpr @@ -117,7 +117,7 @@ syncrepl sizeLimit=unlimited timelimit=unlimited -mirrormode TRUE +multiprovider TRUE overlay syncprov syncprov-sessionlog 100 diff --git a/tests/data/regressions/its8800/slapd-provider1.ldif b/tests/data/regressions/its8800/slapd-provider1.ldif index 3a6cd6c8a4..378d142c67 100644 --- a/tests/data/regressions/its8800/slapd-provider1.ldif +++ b/tests/data/regressions/its8800/slapd-provider1.ldif @@ -59,7 +59,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8800/slapd-provider2.ldif b/tests/data/regressions/its8800/slapd-provider2.ldif index c453cd4454..c06f63d407 100644 --- a/tests/data/regressions/its8800/slapd-provider2.ldif +++ b/tests/data/regressions/its8800/slapd-provider2.ldif @@ -59,7 +59,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI1@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8800/slapd-provider3.ldif b/tests/data/regressions/its8800/slapd-provider3.ldif index c29363a18e..25cd7c3a0c 100644 --- a/tests/data/regressions/its8800/slapd-provider3.ldif +++ b/tests/data/regressions/its8800/slapd-provider3.ldif @@ -59,7 +59,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/data/regressions/its8800/slapd-provider4.ldif b/tests/data/regressions/its8800/slapd-provider4.ldif index c13d3c03ca..8932bb7407 100644 --- a/tests/data/regressions/its8800/slapd-provider4.ldif +++ b/tests/data/regressions/its8800/slapd-provider4.ldif @@ -59,7 +59,7 @@ olcRootDN: cn=manager,dc=example,dc=com olcRootPW: secret olcSizeLimit: unlimited olcTimeLimit: unlimited -olcMirrorMode: TRUE +olcMultiProvider: TRUE olcSyncrepl: {0}rid=100 provider=@URI2@ binddn="cn=manager,dc=example,dc=com " credentials=secret bindmethod=simple searchbase="dc=example,dc=com" logba se="cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0)) diff --git a/tests/scripts/test050-syncrepl-multiprovider b/tests/scripts/test050-syncrepl-multiprovider index aed53723ef..c22205e21f 100755 --- a/tests/scripts/test050-syncrepl-multiprovider +++ b/tests/scripts/test050-syncrepl-multiprovider @@ -169,8 +169,8 @@ echo " retry=\"3 10 300 5\" timeout=3" >> $TMP n=`expr $n + 1` done echo "-" >> $TMP -echo "add: olcMirrorMode" >> $TMP -echo "olcMirrorMode: TRUE" >> $TMP +echo "add: olcMultiProvider" >> $TMP +echo "olcMultiProvider: TRUE" >> $TMP $LDAPMODIFY -D cn=config -H $URI1 -y $CONFIGPWF < $TMP >> $TESTOUT 2>&1 RC=$? if test $RC != 0 ; then @@ -232,8 +232,8 @@ j=`expr $j + 1` done cat <> $TMP - -add: olcMirrorMode -olcMirrorMode: TRUE +add: olcMultiProvider +olcMultiProvider: TRUE EOF $LDAPMODIFY -D cn=config -H $URI -y $CONFIGPWF < $TMP >>$TESTOUT 2>&1 n=`expr $n + 1` @@ -296,7 +296,7 @@ n=`expr $n + 1` done cat <> $TMP -olcMirrorMode: TRUE +olcMultiProvider: TRUE dn: olcOverlay=syncprov,olcDatabase={1}${BACKEND},cn=config objectClass: olcOverlayConfig diff --git a/tests/scripts/test059-consumer-config b/tests/scripts/test059-consumer-config index f2d1255f24..3a1bd6003e 100755 --- a/tests/scripts/test059-consumer-config +++ b/tests/scripts/test059-consumer-config @@ -120,7 +120,7 @@ fi # Instead, they will use an alternate DB so that they may be # configured differently from the provider. This alternate DB # will also be a consumer for the real cn=schema,cn=config tree. -# It has MirrorMode enabled so that it can be written directly +# It has multi-provider enabled so that it can be written directly # while being a consumer of the main schema. echo "Configuring consumer config DB on provider..." $LDAPMODIFY -D cn=config -H $URI1 -y $CONFIGPWF <> $TESTOUT 2>&1 @@ -174,8 +174,8 @@ olcSyncrepl: {0}rid=001 provider=$URI1 binddn="cn=config" $SYNCTYPE retry="3 5 300 5" timeout=3 suffixmassage="cn=schema,cn=config,cn=consumer" - -add: olcMirrorMode -olcMirrorMode: TRUE +add: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? diff --git a/tests/scripts/test063-delta-multiprovider b/tests/scripts/test063-delta-multiprovider index b7f80c0eb1..3f7dd5c6f0 100755 --- a/tests/scripts/test063-delta-multiprovider +++ b/tests/scripts/test063-delta-multiprovider @@ -169,7 +169,7 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple retry="3 +" timeout=3 logbase="cn=log" logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog -olcMirrorMode: TRUE +olcMultiProvider: TRUE $INDEX2 dn: olcOverlay=syncprov,olcDatabase={2}$BACKEND,cn=config @@ -357,8 +357,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? @@ -506,8 +506,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? diff --git a/tests/scripts/test069-delta-multimaster-starttls b/tests/scripts/test069-delta-multiprovider-starttls similarity index 99% rename from tests/scripts/test069-delta-multimaster-starttls rename to tests/scripts/test069-delta-multiprovider-starttls index 14d1bbf5ec..f5013fbaff 100755 --- a/tests/scripts/test069-delta-multimaster-starttls +++ b/tests/scripts/test069-delta-multiprovider-starttls @@ -178,7 +178,7 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt starttls=critical -olcMirrorMode: TRUE +olcMultiProvider: TRUE $INDEX2 dn: olcOverlay=syncprov,olcDatabase={2}$BACKEND,cn=config @@ -367,8 +367,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt starttls=critical - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? @@ -517,8 +517,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt starttls=critical - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? diff --git a/tests/scripts/test070-delta-multimaster-ldaps b/tests/scripts/test070-delta-multiprovider-ldaps similarity index 99% rename from tests/scripts/test070-delta-multimaster-ldaps rename to tests/scripts/test070-delta-multiprovider-ldaps index 4f5420b7ad..fe824a66f3 100755 --- a/tests/scripts/test070-delta-multimaster-ldaps +++ b/tests/scripts/test070-delta-multiprovider-ldaps @@ -177,7 +177,7 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple retry="3 +" timeout=3 logbase="cn=log" logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt -olcMirrorMode: TRUE +olcMultiProvider: TRUE $INDEX2 dn: olcOverlay=syncprov,olcDatabase={2}$BACKEND,cn=config @@ -365,8 +365,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$? @@ -514,8 +514,8 @@ olcSyncRepl: rid=001 provider=$PROVIDERURI binddn="$MANAGERDN" bindmethod=simple logfilter="(&(objectclass=auditWriteObject)(reqresult=0))" syncdata=accesslog tls_cacert=$TESTDIR/tls/ca/certs/testsuiteCA.crt - -replace: olcMirrorMode -olcMirrorMode: TRUE +replace: olcMultiProvider +olcMultiProvider: TRUE EOF RC=$?