From f502fd99274c5bbfc371501b8d6a6957054aef68 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Wed, 11 Dec 2024 17:30:10 -0500 Subject: [PATCH 1/8] DOCSP-45860-older-version-limitations --- .../fact-older-version-limitations.rst | 40 +++++++++++++++++++ source/reference/limitations.txt | 8 ++++ 2 files changed, 48 insertions(+) create mode 100644 source/includes/fact-older-version-limitations.rst diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst new file mode 100644 index 000000000..f61f146eb --- /dev/null +++ b/source/includes/fact-older-version-limitations.rst @@ -0,0 +1,40 @@ +- Writes that produce DDL events cannot occur on the source cluster during the + migration. The following events cannot occur: + + - create + - drop + - dropDatabase + - createIndexes + - dropIndexes + - collModrefineCollectionShardKey + - rename + - reshardCollection + - shardCollection + + This includes operations that may create new collections such as + :dbcommand:`mapReduce`, :pipeline:`$out`, and :pipeline:`$merge`. This also + includes collections created implicitly from inserts. Only writes that produce + CRUD events can occur during the migration. + + .. note:: + + Writes that produce DDL events on source collections outside of the + :ref:`namespace filter ` are allowed. + +- :ref:`GeoHaystack indexes ` are not supported. + +- :ref:`/reverse ` endpoints are not supported. You can't + enable ``reversible`` in the :ref:`/start ` request. + +- You can't enable the ``enableUserWriteBlocking`` in the ``/start`` request. + +- :ref:`SRV connection strings ` for 4.4 source + clusters are not supported. You must use a :ref:`standard connection string + `. + +- You can't enable the ``createSupportingIndexes`` :ref:`sharding parameter + ` with a pre-6.0 cluster. + +- Indexes with inconsistent specs or are missing on some shards are not + supported. To check for index inconsistencies, see + :ref:`manage-indexes-find-inconsistent-indexes`. diff --git a/source/reference/limitations.txt b/source/reference/limitations.txt index 51004bded..8a80cf504 100644 --- a/source/reference/limitations.txt +++ b/source/reference/limitations.txt @@ -198,3 +198,11 @@ cluster. .. include:: /includes/fact-verifier-limitations +Pre-6.0 Migrations +------------------ + +Starting in 1.10, ``mongosync`` supports migrations from source clusters running +MongoDB server versions older than 6.0. For information on supported migration +paths, see :ref:`c2c-server-version-compatibility`. + +.. include:: /includes/fact-older-version-limitations.rst From 9dde24cb5a58a82b573ea0ede7f5a30960bc9ad8 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 12 Dec 2024 09:40:17 -0500 Subject: [PATCH 2/8] * --- source/reference/limitations.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/reference/limitations.txt b/source/reference/limitations.txt index 8a80cf504..1426a2577 100644 --- a/source/reference/limitations.txt +++ b/source/reference/limitations.txt @@ -205,4 +205,6 @@ Starting in 1.10, ``mongosync`` supports migrations from source clusters running MongoDB server versions older than 6.0. For information on supported migration paths, see :ref:`c2c-server-version-compatibility`. +The following limitations apply to pre-6.0 migrations: + .. include:: /includes/fact-older-version-limitations.rst From 45347502e89d13445ee3cd9341ffe53eca662a51 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 12 Dec 2024 12:52:38 -0500 Subject: [PATCH 3/8] JA feedback --- .../fact-older-version-limitations.rst | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index f61f146eb..3d282ae2b 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -1,15 +1,15 @@ - Writes that produce DDL events cannot occur on the source cluster during the migration. The following events cannot occur: - - create - - drop - - dropDatabase - - createIndexes - - dropIndexes - - collModrefineCollectionShardKey - - rename - - reshardCollection - - shardCollection + - ``create`` + - ``drop`` + - ``dropDatabase`` + - ``createIndexes`` + - ``dropIndexes`` + - ``collModrefineCollectionShardKey`` + - ``rename`` + - ``reshardCollection`` + - ``shardCollection`` This includes operations that may create new collections such as :dbcommand:`mapReduce`, :pipeline:`$out`, and :pipeline:`$merge`. This also @@ -21,12 +21,13 @@ Writes that produce DDL events on source collections outside of the :ref:`namespace filter ` are allowed. -- :ref:`GeoHaystack indexes ` are not supported. +- geoHaystack indexes ` are not supported. - :ref:`/reverse ` endpoints are not supported. You can't enable ``reversible`` in the :ref:`/start ` request. -- You can't enable the ``enableUserWriteBlocking`` in the ``/start`` request. +- You can't enable the ``enableUserWriteBlocking`` option in the ``/start`` + request. - :ref:`SRV connection strings ` for 4.4 source clusters are not supported. You must use a :ref:`standard connection string @@ -35,6 +36,6 @@ - You can't enable the ``createSupportingIndexes`` :ref:`sharding parameter ` with a pre-6.0 cluster. -- Indexes with inconsistent specs or are missing on some shards are not +- Indexes with inconsistent specs or that are missing on some shards are not supported. To check for index inconsistencies, see :ref:`manage-indexes-find-inconsistent-indexes`. From a7cf0c1f0d618abdca0e56b2a93b3ea8207910a0 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 12 Dec 2024 13:36:07 -0500 Subject: [PATCH 4/8] * --- source/includes/fact-older-version-limitations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index 3d282ae2b..7d1c42abe 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -21,7 +21,7 @@ Writes that produce DDL events on source collections outside of the :ref:`namespace filter ` are allowed. -- geoHaystack indexes ` are not supported. +- ``geoHaystack`` indexes are not supported. - :ref:`/reverse ` endpoints are not supported. You can't enable ``reversible`` in the :ref:`/start ` request. From 8fe1509223d01c7f7375f8643890f062730d4969 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 12 Dec 2024 13:41:19 -0500 Subject: [PATCH 5/8] * --- source/includes/fact-older-version-limitations.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index 7d1c42abe..c8d3c9adc 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -29,13 +29,14 @@ - You can't enable the ``enableUserWriteBlocking`` option in the ``/start`` request. -- :ref:`SRV connection strings ` for 4.4 source - clusters are not supported. You must use a :ref:`standard connection string - `. - - You can't enable the ``createSupportingIndexes`` :ref:`sharding parameter ` with a pre-6.0 cluster. - Indexes with inconsistent specs or that are missing on some shards are not supported. To check for index inconsistencies, see :ref:`manage-indexes-find-inconsistent-indexes`. + +- For source clusters running MongoDB 4.4, :ref:`SRV connection strings + ` are not supported. You must use a + :ref:`standard connection string + `. From f68028280eab35d3e709fa2baa9dca02be5bdc0f Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 12 Dec 2024 13:50:51 -0500 Subject: [PATCH 6/8] * --- source/includes/fact-older-version-limitations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index c8d3c9adc..8bd7376a0 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -24,7 +24,7 @@ - ``geoHaystack`` indexes are not supported. - :ref:`/reverse ` endpoints are not supported. You can't - enable ``reversible`` in the :ref:`/start ` request. + enable the ``reversible`` option in the :ref:`/start ` request. - You can't enable the ``enableUserWriteBlocking`` option in the ``/start`` request. From 555b02de898a97654bcee04d9f5b95c133154680 Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Mon, 16 Dec 2024 11:02:03 -0500 Subject: [PATCH 7/8] AV feedback --- source/includes/fact-older-version-limitations.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index 8bd7376a0..dc5b9f2bd 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -1,12 +1,13 @@ - Writes that produce DDL events cannot occur on the source cluster during the migration. The following events cannot occur: + - ``collMod`` - ``create`` + - ``createIndexes`` - ``drop`` - ``dropDatabase`` - - ``createIndexes`` - ``dropIndexes`` - - ``collModrefineCollectionShardKey`` + - ``refineCollectionShardKey`` - ``rename`` - ``reshardCollection`` - ``shardCollection`` @@ -23,14 +24,14 @@ - ``geoHaystack`` indexes are not supported. -- :ref:`/reverse ` endpoints are not supported. You can't +- :ref:`/reverse ` endpoint is not supported. You can't enable the ``reversible`` option in the :ref:`/start ` request. - You can't enable the ``enableUserWriteBlocking`` option in the ``/start`` request. - You can't enable the ``createSupportingIndexes`` :ref:`sharding parameter - ` with a pre-6.0 cluster. + `. - Indexes with inconsistent specs or that are missing on some shards are not supported. To check for index inconsistencies, see From 12064cf13c3be7458593bd22e01b9f4f2421192b Mon Sep 17 00:00:00 2001 From: Alison Huh Date: Thu, 19 Dec 2024 10:27:02 -0800 Subject: [PATCH 8/8] MvK feedback --- .../includes/fact-older-version-limitations.rst | 15 +++++++++------ source/reference/limitations.txt | 2 +- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/source/includes/fact-older-version-limitations.rst b/source/includes/fact-older-version-limitations.rst index dc5b9f2bd..63f14d446 100644 --- a/source/includes/fact-older-version-limitations.rst +++ b/source/includes/fact-older-version-limitations.rst @@ -1,5 +1,6 @@ -- Writes that produce DDL events cannot occur on the source cluster during the - migration. The following events cannot occur: +- Writes that produce :term:`DDL ` events cannot + occur on the source cluster during the migration. The following events cannot + occur: - ``collMod`` - ``create`` @@ -28,13 +29,15 @@ enable the ``reversible`` option in the :ref:`/start ` request. - You can't enable the ``enableUserWriteBlocking`` option in the ``/start`` - request. + request. Ensure that no writes are made to the source or destination cluster + during the migration. - You can't enable the ``createSupportingIndexes`` :ref:`sharding parameter - `. + `. Instead, create an index to support your shard key + on the source cluster. -- Indexes with inconsistent specs or that are missing on some shards are not - supported. To check for index inconsistencies, see +- If there are any indexes with inconsistent specs or that are missing + ``mongosync`` returns an error. To check for index inconsistencies, see :ref:`manage-indexes-find-inconsistent-indexes`. - For source clusters running MongoDB 4.4, :ref:`SRV connection strings diff --git a/source/reference/limitations.txt b/source/reference/limitations.txt index 1426a2577..f44222f54 100644 --- a/source/reference/limitations.txt +++ b/source/reference/limitations.txt @@ -115,7 +115,7 @@ Sharded Clusters - Shards cannot be added or removed while syncing. - ``mongosync`` only syncs indexes that exist on all shards. - ``mongosync`` only syncs indexes that have consistent index - specifications on all shards. + specifications on all shards. .. note::