创建事件
概括
create
6.0版本中的新内容。
当在监视的数据库上创建集合并且change stream将 showExpandedEvents 选项设置为 true 时,就会发生创建事件
描述
Field | 类型 | 描述 | |
---|---|---|---|
_id |
Document | 一个BSON对象,用作更改流事件的标识符。该值用作恢复更改流时的参数resumeToken 。resumeAfter 该_id 对象具有以下形式:`{ "_data" : <BinData |
hex string>}该 _data类型取决于 MongoDB 版本,在某些情况下,还取决于更改流打开或恢复时的[功能兼容性版本 (fCV) 。](https://www.mongodb.com/docs/manual/reference/command/setFeatureCompatibilityVersion/#std-label-view-fcv)有关类型的完整列表,请参阅[恢复令牌](https://www.mongodb.com/docs/manual/changeStreams/#std-label-change-stream-resume-token) _data。有关通过 恢复更改流的示例 resumeToken`,请参阅 恢复更改流。 |
clusterTime |
Timestamp | 与事件关联的 oplog 条目的时间戳。与 多文档事务关联的更改流事件通知 都具有相同的clusterTime 值:提交事务的时间。在分片集群上,具有相同事件的事件clusterTime 可能并不都与同一事务相关。有些事件与交易根本无关。要识别单个事务的事件,您可以在变更流事件文档中使用lsid 和的组合。txnNumber 4.0版本中的新功能。 |
|
collectionUUID |
UUID | UUID标识发生更改的集合。6.0版本中的新内容。 | |
lsid |
document | 与事务关联的会话的标识符。仅当操作是多文档事务的一部分时才出现。4.0版本中的新功能。 | |
ns |
document | 受事件影响的命名空间(数据库和/或集合)。 | |
ns.coll |
string | 发生事件的集合的名称。 | |
ns.db |
string | 发生事件的数据库的名称。 | |
operationDescription |
document | 有关更改操作的附加信息。仅当更改流使用 扩展事件时,此文档及其子字段才会出现。6.0版本中的新内容。 | |
operationDescription.``idIndex |
document | _id 新集合的默认索引。6.0版本中的新内容。 |
|
operationType |
string | 更改通知报告的操作类型。create 返回这些更改事件的值。 |
|
txnNumber |
NumberLong | 与LSID,一个有助于唯一标识交易的数字。仅当操作是多文档事务的一部分时才出现。4.0版本中的新功能。 | |
wallTime |
ISODate | 数据库操作的服务器日期和时间。wallTime 不同之处clusterTime 在于,clusterTime 时间戳是从与数据库操作事件关联的 oplog 条目中获取的。6.0版本中的新内容。 |
例子
以下示例显示了一个create
事件:
{
"_id": { <ResumeToken> },
"operationType": "create",
"clusterTime": Timestamp({ t: 1654894547, i: 24 }),
"collectionUUID": UUID("98046a1a-b649-4e5b-9c75-67594221ce19"),
"wallTime": ISODate("2022-06-10T20:55:47.947Z"),
"ns": {
"db": "test",
"coll": "names"
},
"operationDescription": {
"idIndex": { "v": 2, "key": { _id: 1 }, "name": "_id_" }
}
}
参见
原文 - create Event