Docs Menu
Docs Home
/
MongoDB Manual
/ /

reshardCollection Event

On this page

  • Summary
  • Description
  • Example
reshardCollection

New in version 6.1: (Also available in 6.0.14)

A reshardCollection event occurs when:

  • The shard key for a collection and the distribution of your data is changed, and

  • The change stream has showExpandedEvents set to true.

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 _data type depends on the MongoDB versions and, in some cases, the feature compatibility version (fCV) at the time of the change stream's opening or resumption. See Resume Tokens for the full list of _data types.

For an example of resuming a change stream by resumeToken, see Resume a Change Stream.

clusterTime
Timestamp

clusterTime is the timestamp from the oplog entry associated with the event.

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 clusterTime.

Events with the same clusterTime may not all relate to the same transaction. Some events don't relate to a transaction at all. Starting in MongoDB 8.0, this may be true for events on any deployment. In previous versions, this behavior was possible only for events on a sharded cluster.

To identify events for a single transaction, you can use the combination of lsid and txnNumber in the change stream event document.

Changed in version 8.0.

collectionUUID
UUID

UUID identifying the collection where the change occurred.

New in version 6.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.

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.
reshardUUID
UUID

UUID that identifies the resharding operation.

New in version 6.1.

operationDescription. | shardKey
Document

The shard key for the collection where the change occurred.

New in version 6.0.

operationDescription. | oldShardKey
Document

The shard key for the collection that changed.

New in version 6.1.

operationDescription. | unique
Boolean

This has a value of true if the collection was sharded with a unique shard key.

New in version 6.0.

operationDescription. | numInitialChunks
NumberLong

Number of chunks created on each shard during a shardCollection operation.

New in version 6.0.

operationDescription.
collation
Document

Collation document used for the shard key index.

New in version 6.1.

operationDescription.
zones
Array

The zones added for the new shard key.

New in version 6.1.

The following example shows a reshardCollection event:

{
"_id": { <ResumeToken> },
"operationType": "reshardCollection",
"collectionUUID": 0,
"ns": {"db": "reshard_collection_event", "coll": "coll"},
"operationDescription": {
"reshardUUID": 0,
"shardKey": {"newKey": 1},
"oldShardKey": {"_id": 1},
"unique": false,
"numInitialChunks": NumberLong(1),
"collation": {"locale": "simple"},
"zones": [
{"zone": "zone1", "min": {"newKey": {"$minKey": 1}}, "max": {"newKey": {"$maxKey": 1}}}
]
}
}

Back

replace