Definición
planCacheClearFiltersremover filtros de índice en una colección. Aunque los filtros de índice solo existen durante el proceso del servidor y no persisten después del apagado, también puedes borrar los filtros de índice existentes con el comando
planCacheClearFilters.Especifique la forma de la consulta para eliminar un filtro de índice específico. Omítala para borrar todos los filtros de índice de una colección.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Importante
Este comando no es compatible con los clústeres M,0 M2 y5 M. Para obtener más información, consulte Comandos no compatibles.
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.
Sintaxis
El comando tiene la siguiente sintaxis:
db.runCommand( { planCacheClearFilters: <collection>, query: <query pattern>, sort: <sort specification>, projection: <projection specification>, comment: <any> } )
El comando planCacheClearFilters tiene el siguiente campo:
Campo | Tipo | Descripción |
|---|---|---|
| string | El nombre de la colección. |
| Documento | opcional. El predicado de query asociado con el filtro para remover. Si se omite, borra todos los filtros de la colección. Los valores del predicado |
| Documento | opcional. La orden asociada con el filtro que se removerá, si existe. |
| Documento | opcional. La proyección asociada con el filtro a remover, si existe. |
| any | Opcional. Un comentario proporcionado por el usuario para adjuntar a este comando. Una vez configurado, este comentario aparece junto a los registros de este comando en las siguientes ubicaciones:
Un comentario puede ser de cualquier tipo BSON válido (string, objeto, arreglo, etc.). |
Acceso requerido
Un usuario debe tener acceso que incluya la acción planCacheIndexFilter.
Ejemplos
Borrar filtro de índice específico en la colección
La colección orders contiene los dos siguientes filtros:
{ "query" : { "status" : "A" }, "sort" : { "ord_date" : -1 }, "projection" : { }, "indexes" : [ { "status" : 1, "cust_id" : 1 } ] } { "query" : { "status" : "A" }, "sort" : { }, "projection" : { }, "indexes" : [ { "status" : 1, "cust_id" : 1 } ] }
El siguiente comando elimina únicamente el segundo filtro de índice:
db.runCommand( { planCacheClearFilters: "orders", query: { "status" : "A" } } )
Dado que los valores del query predicado son insignificantes para determinar la forma de la consulta, el siguiente comando también eliminaría el segundo filtro de índice:
db.runCommand( { planCacheClearFilters: "orders", query: { "status" : "P" } } )
Borrar todos los filtros de índice en una colección
El siguiente ejemplo borra todos los filtros de índice en la colección orders:
db.runCommand( { planCacheClearFilters: "orders" } )