Docs Menu
Docs Home
/
MongoDBマニュアル
/ /

modify イベント

項目一覧

  • 概要
  • 説明
modify

バージョン 6.0 で追加。

modifyイベントは、 collModコマンドがコレクションまたはビューからオプションを追加または削除する場合など、コレクションが変更されたときに発生します。 このイベントは、変更ストリームのshowExpandedEventsオプションがtrueに設定されている場合にのみ受信されます。

注意

曖昧さ回避

個々のドキュメントが更新されたときに発生するイベントの詳細については、 updateイベントを参照してください。

フィールド
タイプ
説明

_id

ドキュメント

変更ストリーム イベントの識別子として機能するBSONオブジェクト。 この値は、変更ストリームを再開するときにresumeAfterパラメータのresumeTokenとして使用されます。 _idオブジェクトの形式は次のとおりです。

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

_dataタイプは、変更ストリームの開始時または再開時に MongoDB のバージョン、および場合によっては機能の互換性バージョン(FCV)によって異なります。 _dataタイプの完全なリストについては、「再開トークン」を参照してください。

resumeTokenによる変更ストリームの再開の例については、「 変更ストリームの再開 」を参照してください。

clusterTime

タイムスタンプ

clusterTime は、イベントに関連付けられたoplogエントリからのタイムスタンプです。

oplogのサイズ制限 により、マルチドキュメントトランザクションでは複数のoplogエントリが作成される場合があります。トランザクションでは、特定のoplogエントリでステージされた変更ストリームイベントは同じclusterTime を共有します。

同じclusterTimeを持つイベントが、すべて同じトランザクションに関連するわけではありません。 一部のイベントはトランザクションにまったく関連しません。 MongoDB 8.0以降では、どの配置のイベントにも当てはまる可能性があります。 以前のバージョンでは、この動作は シャーディングされたシャーディングされたクラスター上の イベントでのみ可能でした。

単一のトランザクションのイベントを識別するには、変更ストリーム イベント ドキュメントでlsidtxnNumberの組み合わせを使用できます。

バージョン8.0で変更

collectionUUID

UUID

変更がコレクションで発生した場合、collectionUUID はコレクションの UUID を示します。変更がビューで発生した場合、collectionUUID は存在しません。

バージョン 6.0 で追加。

lsid

ドキュメント

トランザクションに関連付けられたセッションの識別子。

操作がマルチドキュメントトランザクションの一部である場合にのみ存在します。

ns

ドキュメント

イベントの影響を受ける名前空間(データベースと または コレクション)。

ns.db

string

イベントが発生したデータベースの名前。

ns.coll

string

イベントが発生したコレクションの名前。

operationDescription

ドキュメント

変更操作に関する追加情報。

このドキュメントとそのサブフィールドは、変更ストリームが展開されたイベントを使用する場合にのみ表示されます。

バージョン 6.0 で追加。

operationDescription.
index

ドキュメント

変更されたインデックス。

バージョン 6.0 で追加。

operationDescription.
indexes

配列

操作によって変更されたインデックスを一覧表示するドキュメントの配列。

operationType

string

変更通知が報告する操作のタイプ。

これらの変更イベントのmodifyの値を返します。

stateBeforeChange

ドキュメント

ドキュメントには、操作によって変更される前にコレクションとインデックスのオプションが表示されています。

stateBeforeChange.
collectionOptions

ドキュメント

ドキュメントには、操作によって変更される前にコレクション オプションが表示されています。

stateBeforeChange.
indexOptions

ドキュメント

ドキュメントには、操作によって変更される前にインデックス オプションが表示されています。

txnNumber

NumberLong

wallTime

データベースの操作のサーバー日付と時刻。 wallTimeclusterTimeclusterTimeは と異なり、 はデータベース操作イベントに関連付けられた oplog エントリから取得されたタイムスタンプであるため、

バージョン 6.0 で追加。

次の例は、 modifyイベントを示しています。

{
"_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
}
}
}

戻る

invalidate

項目一覧