ACC: How Replication Manager Determines Base Replica

Last reviewed: October 20, 1997
Article ID: Q173002
The information in this article applies to:
  • Microsoft Access Developer's Toolkit, version 7.0
  • Microsoft Office 97 Developer Edition Tools

SUMMARY

Advanced: Requires expert coding, interoperability, and multiuser skills.

Microsoft Replication Manager is a tool included with the Microsoft Access Developer's Toolkit (ADT) for Windows 95, version 7.0, and with Microsoft Office 97 Developer Edition Tools. An important feature of Microsoft Replication Manager is its ability to manage members of a replica set, and schedule synchronizations between them.

One of the components that Microsoft Replication Manager uses to control synchronization is the Synchronizer (formerly known as the Transporter in Microsoft Replication Manager 3.0). The Synchronizer is a program that runs in the background and allows database changes to be stored in a dropbox folder for later synchronization. This is especially useful when you are distributing your application to users with portable computers that are not always connected to the network.

When initiating synchronization between members of a replica set managed by multiple Synchronizers, each Synchronizer selects one replica that sends changes to and receives changes from a member of the replica set managed by a different Synchronizer. Likewise, when initiating a local synchronization of a replica set managed by one Synchronizer, Microsoft Replication Manager selects one replica that sends changes to and receives changes from all other replicas in the set. This replica is called the "base" or "gateway" replica.

This article discusses how the Synchronizer determines which replica is designated as the base replica, and what problems may occur as a result.

NOTE: This article assumes you have previously configured Microsoft Replication Manager and are currently managing multiple members of a replica set.

MORE INFORMATION

Each Synchronizer is responsible for determining which one of the members of the replica set it is currently managing becomes the base replica. The Synchronizer uses the following algorithm to determine which replica becomes the base replica:

  1. Determine which members of the replica set currently managed by this Sychronizer are still valid (that is, not deleted, renamed, inaccessible, and so on).

  2. Exclude any partial replicas in the set. Only full replicas can be base replicas.

  3. Of the remaining replicas, select the replica with the lowest Replica ID. This replica becomes the base replica; it is designated to send and receive changes during synchronization.

Determining the Current Base Replica

To determine which replica has been designated as the base replica by the Synchronizer, follow these steps:

  1. Start Microsoft Replication Manager.

  2. On the File menu, click Open Replica Set. Select a member of a replica set you have previously managed with Microsoft Replication Manager, and then click OK. (In Microsoft Replication Manager 3.0, select a folder you have previously managed from the Folders list.)

  3. Right-click the Synchronizer icon that is managing the replica set, and then click "Synchronize Locally Managed Replicas."

  4. After the synchronization is complete, right-click the Synchronizer icon again, and then click "View Synchronizer Log File." (In Microsoft Replication Manager 3.0, point to the View menu, and then click Transporter Log.)

  5. Scroll to the end of the text file and look for entries in the log documenting the latest synchronization. These entries should look similar to the following:

           Time = 8/7/97 4:00:05 PM
           Log Type =  Direct exchange
           Result = Success
           Replica = C:\Windows\Replicas\Replica1.mdb
           ReplicaID = {33F32D42-0F20-11D1-9B50-00AA00B67747}
           Partner Replica Set Member = C:\WINDOWS\replicas\Replica2.mdb
           ReplicaID = {03B1A944-0F20-11D1-9B50-00AA00B67747}
    

    Note the "Replica = " entry. This identifies the base replica of the replica set for this synchronization. In the example in Step 5, the base replica is "C:\Windows\Replicas\Replica1.mdb."

Base Replica Scenario

There are scenarios in which the base replica selected by the Synchonizer could cause synchronization to take an extended amount of time and generate unexpected network traffic. Consider the following:

You have one replica set with three replicas (R1, R2, and R3), located on three computers (Machine A, Machine B, and Machine C). R1 is located on Machine A, R2 is located on Machine B, and R3 is located on Machine C. All three replicas are being managed by a Synchronizer running on Machine A. Machines A and B are both located on the same local area network (LAN), while Machine C is located on a separate LAN that is accessible over a wide area network (WAN).

Assume that R3 has the lowest Replica ID in this replica set, and that all replicas in the set are valid (not deleted, renamed, or inaccessible). Synchronizer will select R3 as the base replica. Therefore, when synchronization is initiated through Microsoft Replication Manager, R3 will be involved in every synchronization to other members of the same replica set managed by this Synchronizer. Since R3 is physically located on a remote computer, this may cause synchronization to take an extended amount of time and cause an unanticipated amount of network traffic. In this scenario, you can improve performance and reduce the amount of network traffic by moving R3 to Machine A (where its Synchronizer is located) and by moving one of the other replicas to Machine C.

Moving a Replica in Microsoft Replication Manager

To move a managed replica to another location, follow these steps. If you manually move a managed replica instead of following these steps, the replica will be marked as invalid, and it will be removed from the list of managed replicas.

  1. Start Microsoft Replication Manager.

  2. On the File menu, click Open Replica Set. Select a member of a replica set you have previously managed with Microsoft Replication Manager, and then click OK. (In Microsoft Replication Manager 3.0, select a folder you have previously managed from the Folders list.)

  3. On the File menu, click Move Replica.

  4. In the Move Replica dialog box, select the replica you want to move, and then click Open.

  5. In the Move To dialog box, select the location you want to move the replica to, and then click Save.

  6. Repeat steps 3 - 5 for each replica you want to move.

REFERENCES

For more information about Microsoft Replication Manager, please see the Microsoft Jet Replication white paper. This white paper is included with Microsoft Office 97 Developer Edition Tools. You may also obtain this white paper from the Microsoft Software Library on the World Wide Web. For more information on how to obtain the Microsoft Jet Replication white paper, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q164553
   TITLE     : ACC97: Jet 3.5 Replication White Paper Available on MSL


Additional query words: hub gateway
Component : jet
Version : WINDOWS:7.0,97
Platform : WINDOWS
Hardware : x86
Issue type : kbinfo
Solution Type : kbworkaround


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: October 20, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.