Docs 菜单
Docs 主页
/
MongoDB Manual
/ /

refineCollectionShardKey 事件

在此页面上

  • 总结
  • 说明
  • 例子
refineCollectionShardKey

6.0 版本中的新功能

修改集合的分片键时会发生refineCollectionShardKey事件。

字段
类型
说明
_id
文档

一个 BSON对象,用作变更流事件的标识符。 恢复变更流时,此值用作resumeAfter参数的resumeToken_id对象具有以下形式:

{
"_data" : <BinData|hex string>
}

_data 类型取决于 MongoDB 版本,在某些情况下,还取决于变更流打开或恢复时的特征兼容性版本 (fCV)。有关 _data 类型的完整列表,请参阅恢复令牌

有关通过 resumeToken 恢复变更流的示例,请参阅恢复变更流

clusterTime
时间戳

与事件相关的 oplog 条目中的时间戳。

多文档事务相关的变更流事件通知都具有相同的 clusterTime 值:提交事务的时间。

具有相同clusterTime的事件可能并不都与同一ACID 事务相关。 有些事件与ACID 事务完全无关。 从MongoDB 8.0开始,任何部署上的事件都可能如此。 在以前的版本中,这种行为只适用于分分片集群上的事件。

要标识单个事务的事件,您可以在变更流事件文档中结合使用 lsidtxnNumber

在版本8.0中进行了更改

collectionUUID
UUID

标识发生更改的集合的 UUID

6.0 版本中的新功能

ns
文档

受事件影响的命名空间(数据库和/或集合)。

ns.coll
字符串

发生事件的集合的名称。

ns.db
字符串

发生事件的数据库的名称。

operationDescription
文档

有关变更操作的其他信息。

仅当变更流使用扩展事件时,此文档及其子字段才会出现。

6.0 版本中的新功能

operationDescription.
shardKey
文档

发生更改的collection的分片键

6.0 版本中的新功能

operationDescription.
oldShardKey
文档

已更改collection的分片键

6.1 版本新增内容

以下示例说明了 refineCollectionShardKey 事件:

{
"_id": { <ResumeToken> },
"operationType": "refineCollectionShardKey",
"clusterTime": Timestamp({ t: 1654894852, i: 52 }),
"collectionUUID": UUID("98046a1a-b649-4e5b-9c75-67594221ce19"),
"ns": {"db": "reshard_collection_event", "coll": "coll"},
"operationDescription": {
"shardKey": {"_id": 1, akey: 1},
"oldShardKey": {"_id": 1}
}
}

后退

modify

在此页面上