Importante
A partir de MongoDB 6.0.3, ejecute una agregación utilizando el
$shardedDataDistributionEtapa para confirmar que no quedan documentos huérfanos. Para más detalles, consulte Confirmar que no quedan documentos huérfanos.
Definición
cleanupOrphanedObsoleto desde la versión 8.0.
Utilice este comando para esperar a que haya documentos huérfanos en un rango de fragmentos desde la clave de un fragmento
MinKeyhasta suMaxKeypara que MongoDB limpie un espacio de nombres específico 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 específico. Para más información sobre cómo MongoDB limpia los documentos huérfanos, consulte Balanceador de Clústeres Fragmentados.
Para ejecutarlo, ejecute
cleanupOrphaneden laadminbase de datos directamente enmongodla instancia que es el miembro principal del conjunto de réplicas del fragmento. No es necesario deshabilitar el balanceador antes decleanupOrphanedejecutar.Nota
No ejecute
cleanupOrphaneden unamongosinstancia.
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 espacio de nombres, es decir, tanto la base de datos como el nombre de la colección, de la colección fragmentada para la que se debe esperar la limpieza de los datos huérfanos. |
Comportamiento
Determinar el rango
El valor de este campo no se utiliza para determinar los límites del rango de limpieza. El comando cleanupOrphaned espera hasta que se limpien del fragmento todos los documentos huérfanos en todos los rangos del espacio de nombres 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:
cleanupOrphaned.okIgual a
1en caso de éxito.Un valor de
1indica que:No quedan documentos huérfanos en el espacio de nombres
cleanupOrphaneddel fragmento, oLa colección a la que se hace referencia en el espacio de nombres
cleanupOrphanedno está fragmentada.
Un valor de
0indica que se ha producido un error.