Resumen
replaceUn evento
replaceocurre cuando una operación de actualización remueve un documento de una colección y lo reemplaza con un nuevo documento, como cuando elreplaceOnese llama el método.
Descripción
Campo | Tipo | Descripción | |||
|---|---|---|---|---|---|
| Documento | Un objeto BSON que sirve como identificador para el evento de flujo de cambios. Este valor se utiliza como el El tipo Para obtener un ejemplo de reanudación de un flujo de cambios por | |||
| Marca de tiempo |
Debido a los límites de tamaño del oplog, las transacciones multidocumentos pueden crear varias entradas de oplog. En una transacción, los eventos de flujo de cambios organizados en una entrada determinada del oplog comparten el mismo En clústeres fragmentados, los eventos con el mismo Para identificar eventos para una única transacción, puedes usar la combinación de | |||
| Documento | Documento que contiene el valor Para los conjuntos particionados, este campo también muestra la clave de partición completa del documento. El campo | |||
| Documento | El nuevo documento creado por la operación. | |||
| Documento | El identificador de la sesión asociada con la transacción. Solo aparece si la operación forma parte de una transacción multi-documento. | |||
| Documento | El namespace (base de datos o colección) afectado por el evento. | |||
| string | El nombre de la colección donde ocurrió el evento. | |||
| string | El nombre de la base de datos donde ocurrió el evento. | |||
| string | El tipo de operación que se reporta en la notificación de cambio. Devuelve un valor de | |||
| NumberLong | Junto con el lsid, un número que ayuda a identificar de forma única una transacción. Solo aparece si la operación forma parte de una transacción multi-documento. |
Ejemplos
El siguiente ejemplo ilustra un evento replace:
{ "_id": { <Resume Token> }, "operationType": "replace", "clusterTime": <Timestamp>, "ns": { "db": "engineering", "coll": "users" }, "documentKey": { "_id": ObjectId("599af247bb69cd89961c986d") }, "fullDocument": { "_id": ObjectId("599af247bb69cd89961c986d"), "userName": "alice123", "name": "Alice" } }
Una operación de replace utiliza el comando de actualización y consta de dos etapas:
Elimina el documento original con el
documentKeyyIntroduzca el nuevo documento utilizando el mismo
documentKey
El fullDocument de un evento replace representa el documento después de la inserción del documento de reemplazo.