sh.checkMetadataConsistency()
定義
sh.checkMetadataConsistency(options)
クラスターのシャーディング メタデータの整合性に関して一連のチェックを実行します。 このメソッドは、不整合の結果のすべてまたはバッチが見つかったカーソルを返します。
重要
mongosh メソッド
このページでは、
mongosh
メソッドについて説明します。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません。データベースコマンドについては、
checkMetadataConsistency
コマンドを参照してください。MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。
アップグレードやダウングレードなどの主要なメンテナンス操作の後にこのメソッドを実行し、MongoDB の以前のリリースのバグが原因でクラスター メタデータが一貫していないか、破損していないかどうかを確認します。
デフォルトでは、 メソッドはシャード間での整合性についてインデックスをチェックしません。 インデックス チェックは、インデックスを作成、削除、または変更する操作と同時に実行されると、誤検知の不整合を返す可能性があります。 この方法でインデックスを確認するには、
checkIndexes
オプションを設定します。このメソッドがチェックする不整合について詳しくは、「不整合のタイプ 」を参照してください。
次の値を返します。 このメソッドは、シャーディング メタデータで見つかった各不整合に対応するドキュメントを含む documents
配列を持つカーソルを返します。
構文
sh.checkMetadataConsistency()
メソッドの構文は次のとおりです。
sh.checkMetadataConsistency( { <options> } )
options
ドキュメントは、次のフィールドと値を取ることができます。
フィールド | タイプ | 説明 |
---|---|---|
checkIndexes | ブール値 | コマンドがシャーディング メタデータのインデックスもチェックするかどうかを設定します。 デフォルトでは、この操作は無効になっています。これは、インデックスを作成、削除、または変更する操作と同時に実行されると、誤検知によって不整合が返される可能性があるためです。 これらの操作が発生する可能性が低いことがわかっている場合にのみ、インデックスをチェックしてください。 |
cursor | ドキュメント | リターンカーソル を構成します。 |
cursor.batchSize | integer | 各バッチに含めるシャーディング メタデータの不整合ドキュメントの最大数。 |
例
sh.checkMetadataConsistency()
{ cursorHasMore: false, documents: [ { type: "MisplacedCollection", description: "Unsharded collection found on shard different from database primary shard", details: { namespace: "test.authors", shard: "shard02", localUUID: new UUID("1ad56770-61e2-48e9-83c6-8ecefe73cfc4") } } ], }