- Reference >
- mongo Shell Methods >
- Replication Methods >
- rs.syncFrom()
rs.syncFrom()¶
- rs.syncFrom()¶
Provides a wrapper around the replSetSyncFrom, which allows administrators to temporarily override the default sync target for the current member. Specify the name of the member you want to replicate from in the form of [hostname]:[port].
Behavior¶
Sync Logic¶
Only modify the default sync logic as needed, and always exercise caution. replSetSyncFrom will not affect an in-progress initial sync operation. To affect the sync target for the initial sync, run replSetSyncFrom operation before initial sync.
If you run replSetSyncFrom during initial sync, MongoDB produces no error messages, but the sync target will not change until after the initial sync operation.
Target¶
The member to sync from must be a valid source for data in the set. To sync from a member, the member must:
- Have data. It cannot be an arbiter, in startup or recovering mode, and must be able to answer data queries.
- Be accessible.
- Be a member of the same set in the replica set configuration.
- Build indexes with the members[n].buildIndexes setting.
- A different member of the set, to prevent syncing from itself.
If you attempt to replicate from a member that is more than 10 seconds behind the current member, mongod will log a warning but will still replicate from the lagging member.
If you run replSetSyncFrom during initial sync, MongoDB produces no error messages, but the sync target will not change until after the initial sync operation.
Persistence¶
replSetSyncFrom provide a temporary override of default behavior. mongod will revert to the default sync behavior in the following situations: