Importante
A partir de MongoDB 6.0.3, ejecutar una agregación utilizando el
$shardedDataDistribution etapa para confirmar que no queden documentos huérfanos. Para obtener más información, consulta Confirmar que no queden documentos huérfanos.
Definición
cleanupOrphanedObsoleto desde la versión 8.0.
Utiliza este comando para esperar a que documentos huérfanos en un rango de fragmentos desde la
MinKeyde una clave de partición hasta suMaxKeypara que MongoDB limpie una namespace específica de la mayoría de los miembros de un fragmento.Nota
Este comando no limpia directamente los documentos huérfanos, sino que espera a que se limpien los huérfanos en un rango especificado. Para obtener más información sobre cómo MongoDB limpia los documentos huérfanos, consulta Balanceador del clúster particionado.
Para ejecutar, emita
cleanupOrphaneden la base de datosadmindirectamente en la instanciamongodque es el miembro principal del set de réplicas de la partición. No necesitas deshabilitar el balanceador antes de ejecutarcleanupOrphaned.Nota
No ejecute
cleanupOrphaneden una instanciamongos.
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 M0 y Flex. Para obtener más información, consulta 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( { cleanupOrphaned: "<database>.<collection>", startingFromKey: <minimumShardKeyValue>, // deprecated secondaryThrottle: <boolean>, // deprecated writeConcern: <document> // deprecated } )
Campos de comandos
cleanupOrphaned tiene los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
| string | El namespace, es decir, tanto la base de datos como el nombre de la colección, de la colección particionada para la que se debe esperar la limpieza de los datos huérfanos. |
Comportamiento
Determinar rango
El valor de este campo no se utiliza para determinar los límites del rango de limpieza. El comando cleanupOrphaned espera hasta que todos los documentos huérfanos en todos los rangos del namespace hayan sido eliminados de la partición antes de completarse, independientemente de la presencia o el valor de startingFromKey.
Acceso requerido
En sistemas que ejecutan,authorization clusterAdmin debe cleanupOrphaned tener privilegios para ejecutar.
Salida
Return Document
Cada comando cleanupOrphaned devuelve un documento que contiene un subconjunto de los siguientes campos: