PingDirectory

Restoring a mixed topology to a clean state

Perform the following steps to restore a mixed-version 6.2 - 7.x topology with replication problems to a clean state with all servers at the same level and with replication functioning normally.

About this task

This information is only applicable when updating from a server version that uses the admin backend to a server version that uses the topology registry. This is only the case when updating from a server version earlier than 7.x to a 7.x version and is not applicable to any updates to server version 8.x or later.

If you are upgrading a PingDirectory server version prior to 7.3 to 7.3 or later and at least one server was previously removed from the topology, you might receive an error message similar to one of the following:

[09/Dec/2019:18:37:56.927 -0700] instanceName="[INSTANCE_NAME]" \
				threadID=438 category=REPLICATION severity=NOTICE msgID=118947975 msg="The \
				replication total backlog count is 163364"

Or:

[09/Dec/2019:17:15:10.108 -0700] category=REPLICATION \
			severity=SEVERE_ERROR msgID=14942295 msg="While clearing the database 997 \
			o=mycompany, the following error happened: (JE 7.5.12) Attempted to remove \
			non-existent database 997 o=mycompany DatabaseNotFoundException: (JE 7.5.12) \
			Attempted to remove non-existent database 997 o=pingone (DbTree.java:922 \
			DbTree.java:1183 DbTree.java:1235 Environment.java:1001 Environment.java:1221 \
			Environment.java:1204 Environment.java:1009 ReplicationDbEnv.java:1186 \
			DomainDbEnv.java:995 ReplicationDB.java:1002 DbHandler.java:1324 DbHandler.java:1064 \
			DbHandler.java:1042 DbHandler.java:798 DbHandler.java:723 DirectoryThread.java:352 \
			(7.3.0.4-20191127203417.000Z-83a75e2a))"

Steps

  1. To export a safe copy of the data, run bin/export-ldif on the primary server.

  2. Start the down-level primary server and stop the upgraded replica server.

  3. Run bin/remove-defunct-server on the upgraded replica server and do the following when prompted:

    1. Select the replica server itself.

    2. Supply the credentials for the primary server when prompted.

    3. Select [c] to continue.

    4. Enter the path to the local changelogDB when prompted.

  4. Leave the upgraded replica server stopped and stop the down-level primary server.

  5. Run bin/dsreplication on the primary server and do the following:

    1. Select 2) Manage the topology (add and remove servers).

    2. Select 4) Cleanup Server.

    3. Select [c] to continue.

    4. Enter the path to the local changelogDB when prompted.

  6. Start the down-level primary server and the upgraded replica server.

  7. Run bin/status on both servers and verify that status of Replication: disabled in Data Sources.

  8. Upgrade the replica server to version 7.3.0.5 or later, which contains fixes for issues 00668265 and DS-40955.

  9. Upgrade the primary server to the same level as the replica server.

  10. To re-enable replication between the primary and replica server, run the bin/dsreplication tool.

  11. Re-initialize the replica server data from the primary server.

  12. Run bin/status on both servers to verify that replication is enabled in Data Sources and that both servers show the same number of entries.