replace
Event
On this page
Summary
replace
A
replace
event occurs when an update operation removes a document from a collection and replaces it with a new document, such as when thereplaceOne
method is called.
Description
Field | Type | Description | |||
---|---|---|---|---|---|
_id | Document | A BSON object which serves as an identifier for the
change stream event. This value is used as the
The For an example of resuming a change stream by | |||
clusterTime | Timestamp | The timestamp from the oplog entry associated with the event. Change stream event notifications associated with a
multi-document transaction
all have the same On sharded clusters, events with the same To identify events for a single transaction, you can use the
combination of New in version 4.0. | |||
documentKey | document | Document that contains the For sharded collections, this field also displays the full shard key
for the document. The | |||
fullDocument | document | The new document created by the operation. | |||
lsid | document | The identifier for the session associated with the transaction. Only present if the operation is part of a multi-document transaction. New in version 4.0. | |||
ns | document | The namespace (database and or collection) affected by the event. | |||
ns.coll | string | The name of the collection where the event occurred. | |||
ns.db | string | The name of the database where the event occurred. | |||
operationType | string | The type of operation that the change notification reports. Returns a value of | |||
txnNumber | NumberLong | Together with the lsid, a number that helps uniquely identify a transction. Only present if the operation is part of a multi-document transaction. New in version 4.0. |
Examples
The following example illustrates a replace
event:
{ "_id": { <Resume Token> }, "operationType": "replace", "clusterTime": <Timestamp>, "ns": { "db": "engineering", "coll": "users" }, "documentKey": { "_id": ObjectId("599af247bb69cd89961c986d") }, "fullDocument": { "_id": ObjectId("599af247bb69cd89961c986d"), "userName": "alice123", "name": "Alice" } }
A replace
operation uses the update command, and consists of two stages:
Delete the original document with the
documentKey
andInsert the new document using the same
documentKey
The fullDocument
of a replace
event represents the document after the
insert of the replacement document.