@@ -371,6 +371,69 @@ progress.
371
371
For more information on DDL operations, see
372
372
:ref:`txn-prod-considerations-ddl`.
373
373
374
+ Network Latency
375
+ ~~~~~~~~~~~~~~~
376
+
377
+ Network latency or long physical distances between migration components
378
+ can negatively affect sync speed.
379
+
380
+ Latency between ``mongosync`` and destination shards
381
+ For each operation on the source cluster, ``mongosync`` does two
382
+ roundtrips to the destination server. The larger the latency, the
383
+ slower the sync.
384
+
385
+ Latency between destination shards
386
+ ``mongosync`` runs operations and updates its own metadata in batches
387
+ in a transaction on the destination cluster. This can result in
388
+ cross-shard transactions, which may be more costly if the shards are
389
+ far apart.
390
+
391
+ Latency between the nodes of any replica set on the source or destination cluster
392
+ ``mongosync`` uses :writeconcern:`"majority"` writes and
393
+ :readconcern:`"majority"` reads, which require acknowledgement from
394
+ multiple nodes in a replica set, including shard-backing replica
395
+ sets. If the majority of these nodes aren't in the same region, there
396
+ will be negative performance implications.
397
+
398
+ Interruptions During Sync
399
+ -------------------------
400
+
401
+ The following considerations pertain to interruptions during the
402
+ ``mongosync`` process.
403
+
404
+ Errors and Crashes
405
+ ~~~~~~~~~~~~~~~~~~
406
+
407
+ If ``mongosync`` encounters an error or becomes unavailable during
408
+ synchronization, or you can resume your ``mongosync`` operation from where
409
+ it stopped. The ``mongosync`` binary is stateless and stores the
410
+ metadata for a restart on the destination cluster.
411
+
412
+ To continue sync, restart ``mongosync`` once it becomes available again
413
+ and use the same parameters as your interupted sync. Once you restart
414
+ ``mongosync``, the process resumes from where it stopped.
415
+
416
+ Cluster Availability
417
+ ~~~~~~~~~~~~~~~~~~~~
418
+
419
+ If your source or destination cluster crashes unexpectedly, you can safely
420
+ restart ``mongosync`` from where it left off. Once your cluster is available
421
+ again, restart ``mongosync`` and use the same parameters as your interupted
422
+ sync.
423
+
424
+ .. _c2c-pause-behavior:
425
+
426
+ Paused Sync
427
+ ~~~~~~~~~~~
428
+
429
+ If ``mongosync`` is in the :ref:`PAUSED <c2c-state-paused>` state,
430
+ ``mongosync`` does not support the following actions:
431
+
432
+ - Upgrading the MongoDB version of the source or destination cluster
433
+ - Enabling and then disabling the balancer
434
+
435
+ You can upgrade ``mongosync`` while it is in the ``PAUSED`` state.
436
+
374
437
Learn More
375
438
----------
376
439
0 commit comments