modify
Event
On this page
Summary
modify
New in version 6.0.
A
modify
event occurs when a collection is modified, such as when thecollMod
command adds or remove options from a collection or view. This event is received only if the change stream has the showExpandedEvents option set totrue
.Note
Disambiguation
To learn more about events that occur when individual documents are updated, see the
update
event.
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 resumeToken for the resumeAfter parameter when resuming a change stream. The _id object has the following form:
{ "_data" : <BinData|hex string> } 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 clusterTime value: the time when the transaction was committed.On sharded clusters, events with the same clusterTime may not all relate to the same transaction. Some events don't relate to a transaction at all.To identify events for a single transaction, you can use the combination of lsid and txnNumber in the change stream event document.
New in version 4.0.
|
collectionUUID | UUID | UUID identifying the collection where the change occurred.
New in version 6.0.
|
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.db | string | The name of the database where the event occurred. |
ns.coll | string | The name of the collection where the event occurred. |
operationDescription | document | Additional information on the change operation. This document and its subfields only appears when the change stream uses expanded events. New in version 6.0.
|
operationDescription. index | document | The index that was modified.
New in version 6.0.
|
operationDescription. indexes | array | An array of documents listing the indexes that were changed by the operation. |
operationType | string | The type of operation that the change notification reports. Returns a value of modify for these change events.
|
stateBeforeChange | document | Document shows collection and index options before the operation changed them. |
stateBeforeChange. collectionOptions | document | Document shows collection options before the operation changed them. |
stateBeforeChange. indexOptions | document | Document shows index options before the operation changed them. |
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.
|
wallTime | ISODate | The server date and time of the database operation. wallTime differs from clusterTime in that clusterTime is a timestamp taken from the oplog entry associated with the database operation event.
New in version 6.0.
|
Example
The following example shows a modify
event:
{ "_id": { <ResumeToken> }, "operationType": "modify", "clusterTime": Timestamp({ t: 1654878543, i: 1 }), "collectionUUID": UUID("47d6baac-eeaa-488b-98ae-893f3abaaf25"), "wallTime": ISODate("2022-06-10T16:29:03.704Z"), "ns": { "db": "test", "coll": "authors" }, "operationDescription": { "index": { "name": "age_1", "hidden": true } }, "stateBeforeChange": { "collectionOptions": { "uuid": UUID("47d6baac-eeaa-488b-98ae-893f3abaaf25") }, "indexOptions": { "hidden": false } } }