|
36 | 36 |
|
37 | 37 | .. note:: Changed in version 4.4
|
38 | 38 |
|
39 |
| - |
40 | 39 | :method:`db.collection.validate()` no longer accepts just a boolean
|
41 | 40 | parameter. See :ref:`4.4-validate-method-signature`.
|
42 | 41 |
|
@@ -112,11 +111,31 @@ finishes.
|
112 | 111 |
|
113 | 112 | .. warning::
|
114 | 113 |
|
115 |
| - Due to the performance impact of validation, consider running |
116 |
| - :method:`db.collection.validate()` only on :term:`secondary` replica |
117 |
| - set nodes. You can use :method:`rs.stepDown()` to instruct the |
118 |
| - current :term:`primary` node to become a secondary to avoid |
119 |
| - impacting a live primary node. |
| 114 | + Validation has exclusive lock requirements that affect performance |
| 115 | + on primaries and on secondaries that are servicing reads. Consider |
| 116 | + only running :method:`db.collection.validate()` on nodes that are |
| 117 | + not servicing reads or writes. |
| 118 | + |
| 119 | + To minimize impact on the primary, the majority of the data-bearing |
| 120 | + (non-arbiter), voting members in the cluster must be available and |
| 121 | + must not have significant replication lag. |
| 122 | + |
| 123 | + To minimize the impact of the validation operation on client |
| 124 | + applications, run :method:`db.collection.validate()` on a secondary |
| 125 | + node that is not servicing read requests. You can convert the |
| 126 | + current primary node to a secondary node, by running the |
| 127 | + :method:`rs.stepDown()` method. |
| 128 | + |
| 129 | + To completely isolate the :method:`db.collection.validate()` |
| 130 | + operation from client traffic, choose one of the following options: |
| 131 | + |
| 132 | + - Isolate a replica set member by following the :ref:`rolling |
| 133 | + maintenance procedure <perform-maint-on-replica-set>` to |
| 134 | + temporarily remove it from the cluster. |
| 135 | + - :ref:`Convert a secondary node |
| 136 | + <configure-hidden-replica-set-member>` to a replica set |
| 137 | + :ref:`hidden member <replica-set-hidden-members>` and perform the |
| 138 | + validation on the hidden node. |
120 | 139 |
|
121 | 140 | Data Throughput Metrics
|
122 | 141 | ~~~~~~~~~~~~~~~~~~~~~~~
|
|
0 commit comments