@@ -327,6 +327,69 @@ progress.
327
327
For more information on DDL operations, see
328
328
:ref:`txn-prod-considerations-ddl`.
329
329
330
+ Network Latency
331
+ ~~~~~~~~~~~~~~~
332
+
333
+ Network latency or long physical distances between migration components
334
+ can negatively affect sync speed.
335
+
336
+ Latency between ``mongosync`` and destination shards
337
+ For each operation on the source cluster, ``mongosync`` does two
338
+ roundtrips to the destination server. The larger the latency, the
339
+ slower the sync.
340
+
341
+ Latency between destination shards
342
+ ``mongosync`` runs operations and updates its own metadata in batches
343
+ in a transaction on the destination cluster. This can result in
344
+ cross-shard transactions, which may be more costly if the shards are
345
+ far apart.
346
+
347
+ Latency between the nodes of any replica set on the source or destination cluster
348
+ ``mongosync`` uses :writeconcern:`"majority"` writes and
349
+ :readconcern:`"majority"` reads, which require acknowledgement from
350
+ multiple nodes in a replica set, including shard-backing replica
351
+ sets. If the majority of these nodes aren't in the same region, there
352
+ will be negative performance implications.
353
+
354
+ Interruptions During Sync
355
+ -------------------------
356
+
357
+ The following considerations pertain to interruptions during the
358
+ ``mongosync`` process.
359
+
360
+ Errors and Crashes
361
+ ~~~~~~~~~~~~~~~~~~
362
+
363
+ If ``mongosync`` encounters an error or becomes unavailable during
364
+ synchronization, or you can resume your ``mongosync`` operation from where
365
+ it stopped. The ``mongosync`` binary is stateless and stores the
366
+ metadata for a restart on the destination cluster.
367
+
368
+ To continue sync, restart ``mongosync`` once it becomes available again
369
+ and use the same parameters as your interupted sync. Once you restart
370
+ ``mongosync``, the process resumes from where it stopped.
371
+
372
+ Cluster Availability
373
+ ~~~~~~~~~~~~~~~~~~~~
374
+
375
+ If your source or destination cluster crashes unexpectedly, you can safely
376
+ restart ``mongosync`` from where it left off. Once your cluster is available
377
+ again, restart ``mongosync`` and use the same parameters as your interupted
378
+ sync.
379
+
380
+ .. _c2c-pause-behavior:
381
+
382
+ Paused Sync
383
+ ~~~~~~~~~~~
384
+
385
+ If ``mongosync`` is in the :ref:`PAUSED <c2c-state-paused>` state,
386
+ ``mongosync`` does not support the following actions:
387
+
388
+ - Upgrading the MongoDB version of the source or destination cluster
389
+ - Enabling and then disabling the balancer
390
+
391
+ You can upgrade ``mongosync`` while it is in the ``PAUSED`` state.
392
+
330
393
Learn More
331
394
----------
332
395
0 commit comments