planCacheClear
Definition
planCacheClear
Removes cached query plans for a collection. Specify a query shape to remove cached query plans for that shape. Omit the query shape to clear all cached query plans.
Syntax
The command has the following syntax:
db.runCommand( { planCacheClear: <collection>, query: <query>, sort: <sort>, projection: <projection>, comment: <any> } )
Command Fields
The command takes the following optional fields:
Field | Type | Description |
---|---|---|
query | document | Optional. The query predicate of the query shape. Only the structure
of the predicate, including the field names, are significant to the
shape; the values in the query predicate are insignificant. |
projection | document | Optional. The projection associated with the query shape. |
sort | document | Optional. The sort associated with the query shape. |
comment | any | Optional. A user-provided comment to attach to this command. Once set, this comment appears alongside records of this command in the following locations:
A comment can be any valid BSON type (string, integer, object, array, etc). New in version 4.4. |
To see the query shapes for which cached query plans exist, see List Query Shapes.
Required Access
On systems running with authorization
, a user must have access that
includes the planCacheWrite
action.
Examples
Clear Cached Plans for a Query Shape
If a collection orders
has the following query shape:
{ "query" : { "qty" : { "$gt" : 10 } }, "sort" : { "ord_date" : 1 }, "projection" : { }, "queryHash" : "9AAD95BE" // Available starting in MongoDB 4.2 }
The following operation clears the query plan cached for the shape:
db.runCommand( { planCacheClear: "orders", query: { "qty" : { "$gt" : 10 } }, sort: { "ord_date" : 1 } } )
Clear All Cached Plans for a Collection
The following example clears all the cached query plans for the
orders
collection:
db.runCommand( { planCacheClear: "orders" } )