Bulk.getOperations()Devuelve un arreglo de operaciones de escritura ejecutadas a través de
Bulk.execute(). Las operaciones de escritura devueltas se agrupan como lo determina MongoDB para su ejecución. Para obtener información sobre cómo MongoDB agrupa la lista de operaciones de escritura masiva, consulte el comportamiento de Bulk.execute().Solo use
Bulk.getOperations()después de unBulk.execute(). Llamar aBulk.getOperations()antes de llamar aBulk.execute()dará como resultado una lista incompleta.
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
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles.
Ejemplo
Lo siguiente inicializa un desarrollador de operaciones Bulk() en la colección items, agrega una serie de operaciones de guardar, ejecuta las operaciones y luego llama a getOperations() en el objeto desarrollador bulk:
var bulk = db.items.initializeUnorderedBulkOp(); for (var i = 1; i <= 1500; i++) { bulk.insert( { x: i } ); } bulk.execute(); bulk.getOperations();
El getOperations() método devuelve un arreglo con las operaciones ejecutadas. La salida muestra que MongoDB dividió las operaciones en 2 grupos, uno con 1000 operaciones y otro con 500. Para obtener información sobre cómo MongoDB agrupa la lista de operaciones de guardar masivas, consulte Comportamiento de Bulk.execute()
Aunque el método devuelve las 1500 operaciones en el arreglo devuelto, esta página omite algunos de los resultados por brevedad.
[ { "originalZeroIndex" : 0, "batchType" : 1, "operations" : [ { "_id" : ObjectId("53a8959f1990ca24d01c6165"), "x" : 1 }, ... // Content omitted for brevity { "_id" : ObjectId("53a8959f1990ca24d01c654c"), "x" : 1000 } ] }, { "originalZeroIndex" : 1000, "batchType" : 1, "operations" : [ { "_id" : ObjectId("53a8959f1990ca24d01c654d"), "x" : 1001 }, ... // Content omitted for brevity { "_id" : ObjectId("53a8959f1990ca24d01c6740"), "x" : 1500 } ] } ]
Campos devueltos
El arreglo contiene documentos con los siguientes campos:
originalZeroIndexEspecifica el orden en que la operación fue añadida al constructor de operaciones masivas, basado en un índice cero; por ejemplo, la primera operación agregada al generador de operaciones masivas tendrá
originalZeroIndexun valor de0.
Tip