Definición
killOpTermina una operación según lo especificado por el ID de operación.
mongoshproporciona ladb.killOp()asistente. Para encontrar las operaciones y sus ID correspondientes, consulte$currentOpodb.currentOp().El comando
killOpdebe ejecutarse en la base de datosadmin.Para ejecutar killOp, utiliza el método
db.runCommand( { <command> } ).
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 tiene soporte limitado en todos los clústeres de MongoDB Atlas. 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 forma:
db.adminCommand( { killOp: 1, op: <opid>, comment: <any> } )
Campos de comandos
Parameter | Tipo | Descripción |
|---|---|---|
| Número | Una ID de operación. |
| 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.). |
Advertencia
Terminar las operaciones en curso con extrema precaución. Solo utiliza killOp para terminar operaciones iniciadas por clientes y no termina operaciones internas de bases de datos.
Comportamiento
No usekillOppara finalizar compilaciones de índices en curso en conjuntos de réplicas o clústeres fragmentados. UsedropIndexesen el principal para eliminar el índice. Consulte Detener compilaciones de índices en curso.
Control de acceso
En sistemas que se ejecutan con, para eliminar operaciones que no son propiedad del authorization killop usuario, el usuario debe tener acceso que incluya la acción de privilegio.
En instancias, los usuarios pueden eliminar mongod killop sus propias operaciones incluso sin la acción de privilegio.
Clúster fragmentado
El comando killOp puede ejecutarse en un mongos y puede terminar consultas (es decir, operaciones de lectura) que abarcan particiones en un clúster. El comando killOp desde mongos no se propaga a las particiones cuando la operación a cancelar es una operación de escritura.
Para obtener información sobre cómo enumerar las operaciones de particionamiento que están activas en una mongos, consulte el parámetro localOps en $currentOp.
Para obtener más información y ejemplos sobre las operaciones de finalización en un clúster sharded, consulta:
Ejemplo
El siguiente ejemplo utiliza killOp para ejecutar la operación en curso con el opid 3478.
db.adminCommand( { "killOp": 1, "op": 3478 } )
La operación devuelve el siguiente resultado:
{ "info" : "attempting to kill op", "ok" : 1 }
killOp informa de éxito si logró marcar la operación especificada para su finalización. Es posible que las operaciones no se finalicen hasta que alcancen un punto de interrupción adecuado. Utilice $currentOp o para confirmar la finalización de la operación db.currentOp() objetivo.