BulkWriteResult()Un contenedor que contiene los resultados del
Bulk.execute().
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
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.
Propiedades
El BulkWriteResult() tiene las siguientes propiedades:
BulkWriteResult.nInsertedEl número de documentos insertados con el método
Bulk.insert(). Para los documentos insertados mediante operaciones con la opciónBulk.find.upsert(), consulta en su lugar el camponUpserted.
BulkWriteResult.nMatchedEl número de documentos existentes seleccionados para actualizar o reemplazar. Si la operación de actualización/reemplazo no produce cambios en un documento existente, por ejemplo, La expresión
$setactualiza el valor al valor actual,nMatchedpuede ser mayor quenModified.
BulkWriteResult.nModifiedNúmero de documentos existentes actualizados o reemplazados. Si la operación de actualización o reemplazo no produce cambios en un documento existente, como restablecer el valor actual del campo,
nModifiedpuede ser menor quenMatched. Los documentos insertados no afectan el número denModified; consulte los camposnInsertedynUpserted.
BulkWriteResult.nUpsertedLa cantidad de documentos insertados a través de operaciones con la opción
Bulk.find.upsert().
BulkWriteResult.upsertedUn arreglo de documentos que contiene información para cada documento insertado a través de operaciones con la opción
Bulk.find.upsert().Cada documento contiene la siguiente información:
BulkWriteResult.writeErrorsUn arreglo de documentos que contiene información sobre cualquier error, no relacionado con niveles de confirmaciones de escritura (write concern), encontrado durante la operación de actualización. El
writeErrorsarreglo contiene un documento de error para cada operación de guardar que presente errores.Cada documento de error contiene los siguientes campos:
BulkWriteResult.writeErrors.indexUn número entero que identifica la operación de guardar en la lista de operaciones en bloque, que utiliza un índice basado en cero. Ver también
Bulk.getOperations().
BulkWriteResult.writeErrors.opUn documento que identifica la operación fallida. Por ejemplo, un error en una operación de actualización/reemplazo devolverá un documento que especifica la consulta, la actualización y las opciones
multiyupsert; una operación de inserción devolverá el documento que se intentó insertar.
BulkWriteResult.writeConcernErrorDocumento que describe los errores relacionados con el nivel de confirmación de escritura (write concern).
Cambiado en la versión 6.0.14: (también disponible en 5.0.30): Cuando se recibe
BulkWriteResult()demongos, siempre se notifican los errores de nivel de confirmación de escritura (write concern), incluso si se producen uno o más errores de escritura. En versiones anteriores, la ocurrencia de errores de escritura podía hacer que elBulkWriteResult()no informara sobre errores de nivel de confirmación de escritura (write concern).Cada documento de error contiene los siguientes campos:
BulkWriteResult.writeConcernError.codeValor entero que identifica la causa del error del nivel de confirmación de escritura (write concern).
BulkWriteResult.writeConcernError.errmsgUna descripción de la causa del error de nivel de confirmación de escritura (write concern).
BulkWriteResult.writeConcernError.errInfo.writeConcernNuevo en la versión 4.4.
El objeto del nivel de confirmación de escritura (write concern) usado para la operación correspondiente. Para obtener información sobre los campos del objeto de nivel de confirmación de escritura (write concern), se puede consultar Especificación de nivel de confirmación de escritura (write concern).
El objeto del nivel de confirmación de escritura (write concern) también puede contener el siguiente campo, que indica el origen del nivel de confirmación de escritura (write concern):
BulkWriteResult.writeConcernError.errInfo.writeConcern.provenanceUn valor de string que indica dónde se originó el nivel de confirmación de escritura (write concern) (conocido como nivel de confirmación de escritura (write concern)
provenance). La siguiente tabla muestra los valores posibles para este campo y su significado:OrigenDescripciónclientSuppliedEl nivel de confirmación de escritura se especificó en la aplicación.
customDefaultEl nivel de confirmación de escritura se originó a partir de un valor por defecto personalizado. Vea
setDefaultRWConcern.getLastErrorDefaultsEl nivel de confirmación de escritura se originó en el campo
settings.getLastErrorDefaultsdel set de réplicas.implicitDefaultEl nivel de confirmación de escritura (write concern) se originó en el servidor en ausencia de todas las demás especificaciones de nivel de confirmación de escritura (write concern).