Definición
PlanCache.clearPlansByQuery( <query>, <projection>, <sort> )Borra los planes del query en caché para el especificado planear la forma del query en caché.
Importante
Método mongosh
Esta página documenta a Método
mongosh. Esta no es la documentación de comandos de base de datos ni de controladores específicos del lenguaje, como Node.js.Para el comando de base de datos, consulta el comando
planCacheClear.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
El método solo está disponible desde el
plan cache objectde una colección específica; es decir.db.collection.getPlanCache().clearPlansByQuery( <query>, <projection>, <sort> ) El método
PlanCache.clearPlansByQuery()acepta los siguientes parámetros:ParameterTipoDescripciónqueryDocumento
El predicado query de la forma del query de caché del plan. Sólo la estructura del predicado, incluidos los nombres de los campos, son significativos para la forma; los valores en el predicado de la consulta son insignificantes.
projectionDocumento
opcional. La proyección asociada con la forma del query de la caché de planes. Es obligatorio si se especifica el parámetro
sort.sortDocumento
Opcional. La clasificación asociada con la forma de consulta de caché del plan.
Para ver las formas de consulta para las que existen planes de consulta almacenados en caché, consulte Ejemplos.
A partir de MongoDB 8.0, utiliza la configuración del query en lugar de añadir filtros de índice. Los filtros de índices están en desuso a partir de MongoDB 8.0.
La configuración de queries tiene más funcionalidades que los filtros de índices. Además, los filtros de índice no son persistentes y no puedes crear fácilmente filtros de índice para todos los nodos del clúster. Para añadir ajustes de query y explorar ejemplos, consulta setQuerySettings.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Acceso requerido
En los sistemas que funcionan con authorization, un usuario debe tener acceso que incluya la acción planCacheWrite.
Ejemplo
Si una colección orders tiene la siguiente forma del query de caché de plan:
{ "query" : { "qty" : { "$gt" : 10 } }, "sort" : { "ord_date" : 1 }, "projection" : { }, "planCacheShapeHash" : "9AAD95BE" }
Advertencia
A partir de MongoDB 8.0, el campo queryHash existente se duplica en un nuevo campo llamado planCacheShapeHash. Si estás utilizando una versión anterior de MongoDB, solo verás el campo queryHash. Las versiones futuras de MongoDB removerán el campo queryHash obsoleto y deberás utilizar el campo planCacheShapeHash en su lugar.
La siguiente operación remueve el plan del query almacenado en caché para la forma:
db.orders.getPlanCache().clearPlansByQuery( { "qty" : { "$gt" : 10 } }, { }, { "ord_date" : 1 } )
Tip
PlanCache.listQueryShapes()