- Reference >
mongo
Shell Methods >- Collection Methods >
- db.collection.validate()
db.collection.validate()¶
On this page
Description¶
-
db.collection.
validate
(<documents>)¶ mongo
Shell MethodThis page documents the
mongo
shell method, and does not refer to the MongoDB Node.js driver (or any other driver) method. For corresponding MongoDB driver API, refer to your specific MongoDB driver documentation instead.Validates a collection. The method scans a collection data and indexes for correctness and returns the result. For details of the output, see Validate Output.
The
db.collection.validate()
method is a wrapper around thevalidate
command.
Syntax¶
Changed in version 4.4
db.collection.validate()
no longer accepts just a boolean
parameter. See db.collection.validate() Parameter Change.
The db.collection.validate()
method has the following syntax:
Parameters¶
The db.collection.validate()
method can take the
following optional document parameter with the fields:
Field | Type | Description |
---|---|---|
full | boolean | Optional. A flag that determines whether the command performs a slower but more thorough check or a faster but less thorough check.
The default is Starting in MongoDB 3.6, for the WiredTiger storage engine, only the
In previous versions, the data validation process for the WT storage engine always forces a checkpoint. |
Behavior¶
The db.collection.validate()
method is potentially resource
intensive and may impact the performance of your MongoDB instance.
The db.collection.validate()
method obtains an exclusive lock
on the collection. This will block all reads and writes on the
collection until the operation finishes. When run on a secondary, the
operation can block all other operations on that secondary until it
finishes.
The db.collection.validate()
method can be slow, particularly
on larger data sets.
Starting in version MongoDB 4.4,
- The
$currentOp
and thecurrentOp
command includedataThroughputAverage
anddataThroughputLastSecond
information for validate operations in progress. - The log messages for validate operations include
dataThroughputAverage
anddataThroughputLastSecond
information.
Examples¶
To validate a collection
myCollection
using the default settings (i.e.{ full: false
)To perform a full validation of collection
myCollection
, specify full: true.
For details of the output, see Validate Output.