Docs Menu
Docs Home
/
MongoDB Manual
/ / /

replSetSyncFrom

On this page

  • Description
  • Behavior
replSetSyncFrom

Temporarily overrides the default sync target for the current mongod. This operation is useful for testing different patterns and in situations where a set member is not replicating from the desired host.

Tip

In the mongo Shell, this command can also be run through the rs.syncFrom() helper method.

Helper methods are convenient for mongo users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.

Run replSetSyncFrom in the admin database.

The replSetSyncFrom command has the following form:

db.adminCommand( { replSetSyncFrom: "hostname<:port>" })

The replSetSyncFrom command has the following field:

Field
Type
Description
replSetSyncFrom
string

The name and port number of the replica set member that this member should replicate from. Use the [hostname]:[port] form.

Replica set members with 1 vote cannot sync from members with 0 votes.

If an initial sync operation is in progress when you run replSetSyncFrom, replSetSyncFrom stops the in-progress initial sync and restarts the sync process with the new target.

Only modify the default sync logic as needed, and always exercise caution.

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. See also Replication Lag and Flow Control.

replSetSyncFrom provide a temporary override of default behavior. mongod will revert to the default sync behavior in the following situations:

  • The mongod instance restarts.

  • The connection between the mongod and the sync target closes.

  • If the sync target falls more than 30 seconds behind another member of the replica set.

For more information the use of replSetSyncFrom, see Configure a Secondary's Sync Target.

Back

replSetStepDown