Summary
insert
An
insert
event occurs when an operation adds documents to a collection.
Description
Field | Type | Description |
---|---|---|
| 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 |
| Timestamp |
Due to oplog size limits, multi-document transactions may create multiple oplog entries. In a transaction, change stream events staged in a given oplog entry share the same Events with the same To identify events for a single transaction, you can use the combination of Changed in version 8.0. |
| UUID | UUID identifying the collection where the change occurred. New in version 6.0. The |
| document | Document that contains the For sharded collections, this field also displays the full shard key for the document. The |
| document | The document created by the operation. Changed in version 6.0. Starting in MongoDB 6.0, if you set the |
| document | The identifier for the session associated with the transaction. Only present if the operation is part of a multi-document transaction. |
| document | The namespace (database and or collection) affected by the event. |
| string | The name of the collection where the event occurred. |
| string | The name of the database where the event occurred. |
| string | The type of operation that the change notification reports. Returns a value of |
| 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. |
| The server date and time of the database operation. New in version 6.0. |
Behavior
Update Operations
The update
command can produce different change events (not just update
) depending on the actual changes it makes to the collection.
Change Event | Description |
---|---|
The update operation modified an existing document. | |
The update operation replaced the document or produced a diff that was more verbose than the original document, causing MongoDB to replace it. | |
The update operation attempted to update a document that doesn't exist and instead added the document to the collection. This only occurs when the update runs with the |
Example
The following example illustrates an insert
event:
{
"_id": { <Resume Token> },
"operationType": "insert",
"clusterTime": <Timestamp>,
"wallTime": <ISODate>,
"ns": {
"db": "engineering",
"coll": "users"
},
"documentKey": {
"userName": "alice123",
"_id": ObjectId("599af247bb69cd89961c986d")
},
"fullDocument": {
"_id": ObjectId("599af247bb69cd89961c986d"),
"userName": "alice123",
"name": "Alice"
}
}
The documentKey
field includes both the _id
and the userName
field. This indicates that the engineering.users
collection is sharded, with a shard key on userName
and _id
.
The fullDocument
document represents the version of the document at the time of the insert.