MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Docs Menu
Docs Home
/ /

MongoDB 7.0 のリリースノート

このページでは、MongoDB 7.0 で導入された変更点と新機能について説明します。

MongoDB 7.0はメジャー リリースであるため、 MongoDB Atlasとオンプレミスの配置の両方でサポートされます。 MongoDB 7.0にはMongoDB Rapid Releases 6.1 、 6.2 、 6.3で導入された変更が含まれています。 このページでは、これらの Rapid Release とMongoDB 7で導入された変更について説明します。 0 。

メジャー リリースと Rapid Release の違いの詳細については、「 MongoDB のバージョン管理 」を参照してください。

警告

過去のリリース制限

以下の 重要な助言 は、一部の MongoDB の前のバージョンに影響します。 配置が重要な助言によって影響を受ける機能に依存している場合は、利用可能な最新のパッチ リリースにアップグレードしてください。

問題
影響を受けるバージョン

SERVER-94559

7.0.0 - 7.0.15

7.0.0 - 7.0.2

7.0.0 - 7.0.2

7.0.0 - 7.0.5

7.0.0 - 7.0.5

7.0.0 - 7.0.6

7.0.0 - 7.0.7

7.0.0 - 7.0.15

修正された問題:

重要

MongoDB 7.0.28には CVE-2025-14847 に対する修正が含まれています。

MongoDBセキュリティ更新の最新情報については、MongoDBセキュリティ更新を参照してください。

修正された問題:

修正された問題:

  • サーバー-77172: "abortExpiredTransactions" スレッドは、セッションのチェックアウトに失敗すると停止する可能性があります

  • SERVER-89039:インデックス構築が開始された後に返すコマンドをサポートする

  • SERVER-92236 : チャンクの移行では短時間のキャンセル ソースを使用する必要があります

  • SERVER-102670 : 順序付き時系列挿入エラーの処理が正しくありません

  • SERVER-107361 :バケットカタログでのロールオーバーの決定が、大規模な測定値の混合スキーマのチェックに失敗する可能性があります

  • サーバー-108565: 時系列コレクションへの過大な書き込みの処理を改善します。

  • サーバー-112467: 保留中のプロキシ接続数を追跡するおよび報告する

  • WT-9575: 最も古い txn ID よりも新しい更新を含むページは、エビクションのキューに入れられません。

  • すべての Jira の課題は 7.0.26 で終了しました

  • 7.0.26 変更履歴

重要

MongoDBサーバークエリ プランナーで を使用した後に変更すると、クラッシュや未定義の動作が発生する可能性があります。

説明: 承認されたユーザーは、バッファのオーバー読み取りを発生させてMongoDBサーバーをクラッシュさせる可能性があります。これは、クエリの実行中にDDL操作を実行する場合に発生する可能性があります。

CVSS スコア: 5.3

CWE: 416 の使用後に無料で使用

影響を受ける製品のバージョン: MongoDB Server 8.2.0、8.0.14 から 8.0、7.0.24 から 7.0、およびそれ以前のサポート終了が近づいているメジャー バージョン。

修正された問題:

修正された問題:

修正された問題:

  • SERVER-81797 : タイムアウトをサポートするアトミック notify()wait() の独自の移植性のある実装を作成します

  • SERVER-86656 : 読み取り用に最適化されたリーダーとライターのミューテックスを作成します

  • SERVER-95324 : chunkMigrationConcurrency を無効にする

  • SERVER-101581 : ASIO で接続を受け入れる前にソケットの状態を確認

  • SERVER-103934 : FCBIS はメモリをリークせずに KVEngine::クリーンシャットダウンを呼び出せる必要があります

  • すべての Jira の課題は 7.0.23 で終了しました

  • 7.0.23 変更履歴

重要

CVE-2025-10061 により、7.0.22 以前のMongoDB 7.0 では、承認されたユーザーが特別に作成された $group クエリを介してMongoDB Serverをクラッシュさせる可能性があります。この脆弱性は、 $group操作内で追加のパラメータが指定されている場合に、特定のアキュムレータ関数の誤った処理に関連しています。この脆弱性は、繰り返しトリガーされると、サービスを拒否する可能性があります。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.1.0 - 8.1.1

  • 8.0.0 - 8.0.11

  • 7.0.0 - 7.0.21

  • 6.0.0 - 6.0.24

CVSS スコア: 6.5

CWE: CWE-20 不適切な入力検証

重要

不正な KMIP 応答により読み取りアクセス違反が発生する可能性があります

CVE-2025-12657 により、7.0.22 以前のMongoDB 7.0 では、mongo バイナリにビルドされた KMIP 応答パーサーが、特定の不正パケットに対して過剰に許容され、無効なオブジェクトに解析される可能性があります。このオブジェクトを後で読み取ると、読み取りアクセス違反が発生する可能性があります。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.0.0 - 8.0.9

  • 7.0.0 - 7.0.21

CVSS スコア: 5.9

CWE: CWE-754: 非推奨または例外条件の不適切なチェック

修正された問題:

修正された問題:

  • SERVER-92806 : プランキャッシュエントリが $elemMatch とのインデックス照合を無視する

  • SERVER-95672: サブ配列を含む配列フィールドのインデックスには、一部の結果が含まれません

  • SERVER-97044: ゾーン シャーディングを使用している、または使用していたコレクションのリシャーディングまたはアンシャーディング中に、変更ストリームが誤って削除イベントを出力する可能性がある問題を修正

  • WT-12012: 冗長レベルを増やした後に gen_drain が再開した場合、元の冗長レベルを復元

  • WT-13216 : 圧縮コマンドのキャッシュエビクション チェックの使用を評価します

  • すべての Jira の課題は 7.0.21 で終了しました

  • 7.0.21 変更履歴

重要

不完全なデータの誤処理により mongos が新しい接続を受け入れなくなる可能性があることを修正しました

CVE-2025-6714 により、7.0.20 以前のMongoDB 7.0 では、MongoDB Server の mongos コンポーネントは、不完全なデータの誤った処理が原因で、新しい接続を応答しなくなる可能性があります。この問題は、指定されたポートで HAProxy を使用し、mongos のロードバランサーサポートで構成されているシャーディングされたMongoDBクラスターに影響します。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.0.0 - 8.0.8

  • 7.0.0 - 7.0.19

  • 6.0.0 - 6.0.22

CVSS スコア: 7.5

CWE : CWE-834 過剰な反復処理 および CWE-400 非制御リソース消費

修正された問題:

重要

MongoDB Server は$mergeCursors ステージにより特権昇格の影響を受けやすい可能性があります。

CVE-2025-6713 により、7.0.19 以前のMongoDB 7.0 では、権限のないユーザーが特別に作成された集計パイプラインを活用して、適切な認可なしでデータにアクセスする可能性があります。これは、次の$mergeCursorsステージの不適切な処理によるものです。 MongoDB Server.これにより、追加の認可なしでデータにアクセスする可能性があります。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.0.0 - 8.0.6

  • 7.0.0 - 7.0.18

  • 6.0.0 - 6.0.21

CVSS スコア: 7.7

CWE : CWE-285: 不適切な認可

修正された問題:

  • SERVER-106752 MongoDB Server は$mergeCursors ステージにより特権昇格の影響を受けやすい可能性があります

修正された問題:

  • SERVER-82037 ソーターのスピルで使用されるメモリは、無制限に増加する可能性があります

  • SERVER-90689 THPのスタートアップの警告チェックを変更し、警告を発する前にプロセスレベルの設定も確認するようにします

  • SERVER-95452 更新および削除中に CollectionRoutingInfoTarget がすべてのチャンク範囲を反復処理しないようにします

  • SERVER-98720「プラン エグゼキュータ エラー」警告ログに欠落しているredact() 呼び出しを追加

  • SERVER-100901 ShardingTaskExecutor で tassert に対するユーザー ダイジェストの不変を緩和します

  • すべての Jira の課題は 7.0.18 で終了しました

  • 7.0.18 変更履歴

重要

MongoDBサーバーの OIDC 認証におけるサービス脆弱性の事前認証拒否

CVE-2025-6709 により、7.0.17 以前のMongoDB 7.0 では、MongoDB Server は、 OIDC認証を使用する場合にJSON入力内の特定の日付値の処理が不適切であるため、サービス拒否の脆弱性の影響を受けます。これは、mongo シェルを使用して再現でき、悪意のあるJSONペイロードを送信し、不均等な障害とサーバーのクラッシュを引き起こす可能性があります。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.0.0 - 8.0.4

  • 7.0.0 - 7.0.16

同じ問題はMongoDB Server v6.0 にも影響しますが、攻撃者は認証後にのみサービスの拒否を発生させることができます。この問題は、次のMongoDB Serverバージョンに影響します。

  • 6.0.0 - 6.0.20

CVSS スコア: 7.5

CWE : CWE-20: 不適切な入力検証

重要

MongoDBの過剰再帰によるJSON解析のサービスStack Overflow脆弱性の事前認証拒否

CVE-2025-6710 により、7.0.17 以前のMongoDB 7.0 では、MongoDB Server はJSON解析メカニズムにより、Stack Overflowの影響を受ける可能性があります。特別に作成されたJSON入力では、警告なしのレベルの再帰が発生し、スタック領域が過剰に消費される可能性があります。 このような入力はStack Overflowが発生し、サーバーがクラッシュして事前認証が発生する可能性があります。

この問題は、次のMongoDB Serverバージョンに影響します。

  • 8.0.0 - 8.0.4

  • 7.0.0 - 7.0.16

同じ問題はMongoDB Server v6.0 にも影響しますが、攻撃者は認証後にのみサービスの拒否を発生させることができます。この問題は、次のMongoDB Serverバージョンに影響します。

  • 6.0.0 - 6.0.20

CVSS スコア: 7.5

CWE: CWE-674: 非制御再帰

修正された問題:

  • SERVER-73641 時系列フィルタリングでは、シャーディングされている場合に拡張範囲イベントが除外される可能性があります

  • SERVER-76883 外部ソースユーザーの「ロールが存在しません」ログのチャットボットを削減

  • SERVER-85627 ステップダウン killOp で中断されたコマンドのログ情報

  • SERVER-89614 $out は名前の変更と一時コレクションの削除の間で正しくクリーンアップされません

  • SERVER-106748 OIDC認証を受け入れる場合のサービスの事前認証拒否

  • SERVER-106749 MongoDBの過剰再帰によるJSON解析でのサービスStack Overflow脆弱性の事前認証拒否

  • すべての Jira の課題は 7.0.17 で終了しました

  • 7.0.17 変更履歴

修正された問題:

重要

null バイトの不適切な中性化により、 MongoDB Serverでバッファのオーバー読み取りが発生する可能性があります

より前のMongoDB7.0 7.0.15では、承認されたユーザーは、 MongoDB Serverで不正なBSON を構築する特別に作成されたリクエストを発行することで、クラッシュをトリガーしたり、サーバー メモリのバッファ オーバー読み取りの内容を受信したりする可能性があります。

この問題は、 MongoDB Server のバージョンに影響します。

  • 5.0.0 - 5.0.29

  • 6.0.0 - 6.0.18

  • 7.0.0 - 7.0.14

  • 8.0.0 - 8.0.1

修正された問題:

  • SERVER-82814クラスター化されたコレクションのスキャン限界を決定するときに内部expr 比較演算子をサポートする

  • SERVER-85892 $merge は $documents エラーを返した後にパイプラインを使用します

  • SERVER-91195 トップレベルの時系列コレクションオプションを見逃しないように汎用的なバックポート可能なソリューションを提供します

  • SERVER-91625 $$NOW、$$CLUSTER_TIME、$$USER_ROLES を使用した式のインデックス付きプランの有効化

  • WT-12643 すべてのページをエビクションできるように、サーバーのウォークスルー ロジックを修正します

  • すべての Jira の課題は 7.0.14 で終了しました

  • 7.0.14 変更履歴

重要

CSFLE および Queryable Encryption の自己検索で、暗号文ではなくプレーンテキストとしてサブパイプラインの値が送信されることがある問題を修正します

CVE-2024 -8013 により、 以前のMongoDB7.0 7.0.12では、特定の複雑な自己参照$lookup サブパイプラインのクエリ分析でバグが発生し、送信される暗号化されたフィールドの式でリテラル値が発生する可能性があります。不正な形式サーバーに渡す。

このような状況が発生した場合、ドキュメントは返されたり書込まれたりすることはありません。 この問題は、次の MongoDB Server バージョンのmongocryptdバイナリとmongo_crypt_v1共有ライブラリに影響します。

  • 7.3.0 - 7.3.3

  • 7.0.0 - 7.0.11

  • 6.0.0 - 6.0.16

  • 5.0.0 - 5.0.28

CVSS スコア: 2.2

CWE: CWE-319: 機密情報のクリアテキスト送信

修正された問題:

  • サーバー -96254 CSFLE および Queryable Encryption の自己検索では、サブパイプラインにおける値の暗号化に失敗する可能性があります

  • SERVER-64574 MozJS/Spidermonkey を最新の ESR にアップグレードします

  • SERVER-86674 プライマリのキャッチアップでは、サーバーがキャッチアップしていない場合にキャッチアップしたと認識する可能性があります

  • SERVER-90485 $sort は includeArrayIndex と組み合わせて使用すると期待どおりに動作しません

  • SERVER-91362 パフォーマンス: キャッシュされた JsExecution が存在する場合、 JavaScript 「スコープ」オブジェクトをコピーしないでください

  • WT-12736 準備された更新でページを再インスタンス化した後、ページをクリーンとしてマークします

  • すべての Jira の課題は 7.0.12 で終了しました

  • 7.0.12 変更履歴

修正された問題:

修正された問題:

修正された問題:

  • SERVER-78556 internalInsertMaxBatchSize のデフォルトを 64 に戻します

  • SERVER-79575 NUノードのカウントを修正しました

  • SERVER-86583 シャーディングされていないコレクションでの非トランザクション スナップショットの読み取りは、シャーディング メタデータが一致しない状態で実行される可能性があります

  • SERVER-87666 $documents のクエリ形状は実行ごとに異なります

  • SERVER-88360 「シャーディング カタログとローカル カタログ コレクションの UUID が一致しません」というトリップワイヤ アサーションを削除します

  • すべての Jira の課題は 7.0.8 で終了しました

  • 7.0.8 変更履歴

修正された問題:

  • サーバー -84368: 古い mongos からシャーディングされた空でないコレクションに対して CreateIndex が実行されると、StaleConfig エラーが発生します

  • SERVER-84628 mongos の起動時に読み取り/書き込みに関する警告が表示されます

  • SERVER-85459 [v7.0] bucketRoundingSeconds パラメーターは fCV 6.0、バイナリー 7.0 のノードによって受け入れられます

  • SERVER-85869 構成シャードを徹底的に検索すると古いデータが返される可能性があります

  • SERVER-87061 シャーディングされたマルチドキュメントトランザクションでは、同時再シャード操作の部分的な影響を観察できます

  • すべての Jira の課題は 7.0.7 で終了しました

  • 7.0.7 変更履歴

重要

MongoDB Server が信頼できない接続が成功する可能性があることに対する修正

CVE- 2024 - 1351により、 7.0.6以前の MongoDB 7.0では、 --tlsCAFileおよびCAFileの特定の構成において、MongoDB Server がピア証明書の検証をスキップし、信頼できない接続が成功する可能性があります。

これにより、TLS によって提供されるセキュリティ保証と、証明書の検証のために閉じられる必要があるオープン接続を実質的に削減する可能性があります。 この問題は、次の MongoDB Server バージョンに影響します。

  • 7.0.0 - 7.0.5

  • 6.0.0 - 6.0.13

  • 5.0.0 - 5.0.24

  • 4.4.0 - 4.4.28

CVSS スコア: 8.8

CWE: CWE-295: 不適切な認定検証

修正された問題:

  • SERVER-72703 $out の DB ロックを MODE_IX にダウングレード

  • SERVER-82353 movePrimary が同時に実行されると、マルチドキュメントトランザクションでドキュメントが失われる可能性あり

  • SERVER-84338 トップレベルの $or クエリは無効な SBE プラン キャッシュ エントリーにつながり、間違った結果を返す可能性があります

  • SERVER-84723 シャーディングされたマルチドキュメントトランザクションは、同時 DDL 操作の部分的な影響を観察できます

  • WT-11062 同時アクセスを可能にするために参照アドレスを安全に解放

  • 7.0.6 の Jira 課題 はすべて終了しました。

  • 7.0.6 変更履歴

修正された問題:

修正された問題:

修正された問題:

  • SERVER-77506 シャーディングされたマルチドキュメントトランザクションでは、データと ShardVersion が一致しない可能性があります

  • SERVER-79088 結果がゼロになるクエリの SBE マルチプランナーのパフォーマンスを向上させます

  • SERVER-81106 受信者シャードは、クローンフェーズを開始する前にコレクション バージョンがローカルに保存されるのを待たない

  • SERVER-81966 更新中に以前の MongoDB インスタンスの変更を避ける

  • WT-11564 チェックポイントに存在する場合にのみ最新のトランザクション値を読み取るように RTS を修正

  • すべての JIRA 課題は 7.0.3 で終了しました

  • 7.0.3 変更履歴

修正された問題:

  • SERVER-74954 $ が含まれている場合、または $elemMatch の追加条件を書き換えた場合、結果が不正確になる

  • SERVER- は79771 networkInterfaceExceededTimeLimit に対してリシャーディング操作を回復性のあるものにする

  • サーバー -79912: 無効な BSON が原因で CheckReplDBHash により system.buckets コレクションの失敗が報告されます。

  • SERVER-79982 バッチカタログライターは、HistoricalCatalogIdTracker::cleanup() と同時に実行され、PIT 検索結果が不正確になる可能性があります

  • SERVER-80488バランサー分裂チャンク ポリシーでルーティング テーブルをトラバースしないようにします

  • すべての JIRA 課題は 7.0.2 で終了しました

  • 7.0.2 変更履歴

修正された問題:

  • SERVER-71627 キャッシュされたコレクションルート情報を更新すると、100万チャンクのクラスターに対するすべてのクライアント要求が大幅にブロックされます

  • SERVER-77183 $project の後に $group を続けると、誤った結果が返されることがあります

  • SERVER-80256 QueryPlannerAnalysis::explodeForSort では、インデックススキャンが不連続な結果を生成することが想定されません

  • すべての JIRA 課題は 7.0.1 で終了しました

  • 7.0.1 変更履歴

このページの残りの部分では、MongoDB 7.0 で導入された変更点と新機能について説明します。

MongoDB 7.0 以降では、 mongosh メソッドとデータベース コマンドを使用して Atlas Search インデックスを管理できます。Atlas Search インデックス コマンドは、 MongoDB Atlas でホストされている配置でのみ使用でき、少なくとも M 10 の Atlas クラスター階層が必要です。

Atlas Search インデックスを管理するには、次のコマンドを使用します。

名前
説明

指定されたコレクションに Atlas Search インデックスを作成します。

既存の Atlas Search インデックスを削除します。

指定されたコレクションの既存の Atlas Search インデックスに関する情報を返します。

既存の Atlas Search インデックスをアップデートします。

名前
説明

指定されたコレクションに 1 つ以上の Atlas Search インデックスを作成します。

既存の Atlas Search インデックスを削除します。

既存の Atlas Search インデックスをアップデートします。

名前
説明

すべてのコレクションまたは特定のコレクションのサンプル クエリを一覧表示します。

指定されたコレクションの既存の Atlas Search インデックスに関する情報を返します。

MongoDB 7.0以降、 OIDC アクセス トークンには、 audience oidcIdentityProviders フィールドのみを指定できます。 空の配列または複数の文字列の配列を持つaudienceフィールドは無効です。

詳細については、「 oidcIdentityProviders フィールド 」を参照してください。

MongoDB 7.0.3 以降(そして 6.0.12 と 5.0.22)、ハッシュされたシャードキーのインデックスを削除できます。

これにより、ハッシュされたシャードキーでシャーディングされたコレクションのデータ挿入を高速化できます。

詳細については、「ハッシュシャードキー インデックスの削除」を参照してください。

MongoDB 7.0 以降のビューでは、低速クエリのログ メッセージに新しいキャッシュ更新時間フィールドが含まれるようになりました。

バージョン 7.0 以降、MongoDB は、過負荷時のデータベース スループットを最適化するために、デフォルトのアルゴリズムを使用して、ストレージ エンジンの同時トランザクションの最大数 (読み取りチケットと書き込みチケットの両方)を動的に調整します。

次の表は、MongoDB 7.0 以降およびそれ以前の過負荷シナリオを特定する方法をまとめたものです。

バージョン
過負荷シナリオの診断

7.0以降

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

ストレージエンジンのトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 であっても、過負荷を示すものではありません

6.0 以前

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

storage engine のトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 の場合、過負荷を示している高い可能性があります。

詳しくは以下を参照してください。

MongoDB 7.0 以降では、 currentOp コマンドと db.currentOp() メソッドに次の新しいフィールドが含まれます。

MongoDB 7.0 以降では、 currentOp 集計ステージに次の新しいフィールドが含まれます。

MongoDB 7.0 以降では、複合ワイルドカード インデックスを作成できます。複合ワイルドカード インデックスには、1 つのワイルドカードタームと 1 つ以上の追加のインデックスタームがあります。

複合ワイルドカードを使用すると、既知のパターンでのクエリをサポートし、コレクション内のインデックスの総数を制限できます。

MongoDB 7.0 以降では、変更ストリーム イベントが 16 MB を超える場合、新しい $changeStreamSplitLargeEvent ステージを使用してイベントを小さなフラグメントに分裂できます。

以下の新しい指標では、大規模な変更ストリーム イベントに関する情報が報告されます。

serverStatus には、出力に次の新しいフィールドが含まれます。

プラン キャッシュ メトリクス
queryAnalyzer メトリクス

MongoDB 7.0 以降では、スロットベースのクエリ実行エンジンにより、より広範囲の検索および集計クエリのパフォーマンスが向上します。

低速クエリ ログ メッセージに、クエリを完了したクエリ エンジンを示す queryFramework フィールドが含まれるようになりました。

  • queryFramework: "classic" クラシック エンジンでクエリが完了したことを示します。

  • queryFramework: "sbe" スロット ベースのクエリ実行エンジンでクエリが完了したことを示します。

MongoDB 7.0 以降では、新しい USER_ROLES システム変数を使用して、現在のユーザーの ロール を返すことができます。

USER_ROLESを含むユースケースについては、 findaggregationviewupdateOneupdateMany 、およびfindAndModify の例を参照してください。

MongoDB 7.1(および 7.0、6.3.2、6.0.6、5.0.18)以降で利用できます。

MongoDB には、チャンク移行に関する次の新しいシャーディング統計が含まれています。

スロークエリログメッセージの totalOplogSlotDurationMicros は、書き込み操作がストレージエンジンの書き込みをコミットするためのコミットタイムスタンプを取得してから、実際にコミットするまでの時間を示しています。mongod は並列書き込みをサポートします。ただし、書込み (write) 操作はコミット タイムスタンプとともに任意の順序でコミットされます。

詳しくは、「低速操作のログ」を参照してください。

MongoDB 7.0 では、 analyzeShardKey コマンドに関連する次のパラメーターが追加されました。

MongoDB 7.0 では、AutoMerger が有効な場合に、自動マージのラウンド間の時間を秒単位で指定する autoMergerIntervalSecs パラメーターが追加されました。autoMergerIntervalSecs は、シャーディングされたクラスターのコンフィギュレーションサーバー上でのみ設定できます。

MongoDB 7.0 では、AutoMerger が有効な場合に、同じコレクションで AutoMerger によって開始されるマージ間の最小時間をミリ秒単位で指定する autoMergerThrottlingMS が追加されました。autoMergerThrottlingMS は、シャーディングされたクラスターのコンフィギュレーションサーバー上でのみ設定できます。

MongoDB 7.0 では、バランス調整レートを調整できる balancerMigrationsThrottlingMs パラメーターが追加されました。

MongoDB 7.0 では、クラスター接続の健全性メトリクスに関連する一連のログ メッセージ をログに表示するかどうかを指定できる enableDetailedConnectionHealthMetricLogLines パラメーターが追加されました。

MongoDB 7.0 では、 OpenIDoidcIdentityProviders Connect 認証を使用するときに ID プロバイダー(IDP)構成を指定できるパラメーターが追加されました。

MongoDB 7.0 では、 configureQueryAnalysis コマンドに関連する次のパラメーターが追加されました。

MongoDB 7.0 以降、等価クエリを使用した Queryable Encryption が一般提供(GA)されます。GA 版での改善により、Queryable Encryption はパブリック プレビュー版との互換性がなくなっています。Queryable Encryption は現在 GA 版が提供されているため、パブリックプレビュー版は使用しないでください。詳しくは、「MongoDB 7.0 での互換性の変更」を参照してください。

MongoDB 7.0(および 6.0.6)useLegacyProtocol 設定を追加します。この設定により、MongoDB サーバーは KMIP プロトコル バージョン 1.0 または 1.1 を使用する KMIP サーバーに接続できます。

MongoDB 7.0 および 6.0.7 以降では、MongoDB は、次のオペレーティング システムで OpenSSL 3.0 および OpenSSL FIPS プロバイダーをサポートしています。

  • Red Hat Enterprise Linux 9

  • Amazon Linux 2023

  • Ubuntu Linux 22.04

MongoDB 8.0 以降、MongoDB は、OpenSSL 3.0 と Amazon Linux 2023.3 用の OpenSSL FIPS プロバイダーをサポートしています。

詳しくは、「TLS/SSL(トランスポート暗号化)」を参照してください。

7.0 以降、MongoDB Enterprise は OpenID Connect 認証をサポートします。OpenID Connect は、OAuth2 上に構築された認証レイヤーです。OpenID Connect を使用して、MongoDB databaseとサード パーティーの IdP との間のシングル サインオンを構成できます。

新しい演算子:

名前
説明

中央値、つまり 50 パーセンタイルの近似値がスカラー値として返されます。

この演算子は、アキュムレータとしても、集計式としても使用できます。

指定パーセンタイル値に対応するスカラー値の配列を返します。

この演算子は、アキュムレータとしても、集計式としても使用できます。

MongoDB 7.0 では、 $dateToString 演算子で使用する次の形式指定子が追加されました。

指定子
説明
Possible Values

%b

省略表記の月(3 文字)

jan-dec

%B

正式な月名

january-december

MongoDB 7.0 は、delete コマンドに基づくこれらの操作から、時系列の制限の大半を解消します。

MongoDB 7.0 以降では、 checkMetadataConsistencyコマンドを使用して、クラスター、データベース、コレクション レベルでシャーディング メタデータの不整合をチェックできます。このような矛盾は、次のようなケースに起因します。

  • MongoDB の以前のリリースを実行中にクラスターでバグが発生した場合のアップグレード

  • クラスター カタログを破損する手動介入

mongosh を通じて次のヘルパー メソッドが利用できるようになりました。

コマンドによってチェックされる不整合について詳しくは、「不整合のタイプ」を参照してください。

MongoDB 7.0 以降では、 mergeAllChunksOnShard コマンドは、特定のコレクションに対してシャーディングが所有するすべてのマージ可能なチャンクを検索してマージします。

MongoDB 7.0 以降では、 AutoMerger はマージ可能性の要件を満たすチャンクを自動的にマージできます。AutoMerger はデフォルトで有効になっています。

MongoDB 7.0 以降では、次のメソッドを使用して AutoMerger の動作を制御できます。

MongoDB 7.0 以降では、 configureCollectionBalancing コマンドは enableAutoMergerパラメーターを受け入れます。enableAutoMergerを使用して、AutoMerger がこのコレクションを考慮するかどうかを設定します。

MongoDB 7.0 では、カタログ更新アクティビティによってブロックされた操作が、カタログ更新アクティビティによってブロックされなかった場合でも、コレクション ルーティング情報を使用するすべての操作の mongosoperationsBlockedByRefresh カウンターが増加したため、カタログ キャッシュ更新アクティビティによってブロックされた操作に関する統計を含むoperationsBlockedByRefreshドキュメントが削除されます。

MongoDB 7.0 では、シャーディング キーを評価するためのメトリクスを計算できる analyzeShardKey コマンドと db.collection.analyzeShardKey() メソッドが追加されました。

MongoDB 7.0 では、コレクションのクエリ サンプリングを構成できる configureQueryAnalyzer コマンドが追加されました。MongoDB 7.0 では、 configureQueryAnalyzer コマンドをラップする db.collection.configureQueryAnalyzer() も追加されています。サンプル クエリは analyzeShardKey に情報を提供し、シャーディング キーの読み取りと書き込みの分布に関するメトリクスを計算します。

MongoDB 7.0 では、 PPC64LE および s390x アーキテクチャ上の RHEL 7 / CentOS 7 / Oracle 7 のサポートが削除されます。

MongoDB 6.3 では、次の集計演算子が導入されています。

演算子
説明

intまたはlong値の配列に対するビット単位のand演算の結果を返します。

単一の引数または単一の int または long 値を含む配列に対するビット単位の not 演算の結果を返します。

intまたはlong値の配列に対するビット単位のor演算の結果を返します。

intlong の値の配列に対するビット単位の xor (排他的論理和) 演算の結果を返します。

MongoDB 6.3 以降では、サーバー接続の取得からネットワーク経由でサーバーに送信するバイトの書き込みまでの操作待機時間が 1 ミリ秒を超えると、ログにメッセージが追加されます。 詳細については、「接続取得からワイヤ ログ メッセージ 」を参照してください。

MongoDB 6.3 以降では、 connPoolStatsコマンドの出力が次のように変更されています。

ドキュメント
フィールド

新しいconnPoolStats.acquisitionWaitTimesドキュメント。

各範囲内の接続リクエスト数を含む時間範囲。 すべての時間範囲の接続リクエストの合計数。

MongoDB 6.3 以降では、クラシック実行エンジンを使用する場合、 ステージの 出力にスピルexplain $groupデータに関する新しいメトリクスが含まれます。

  • spillFileSizeBytes$groupステージでディスクに書込まれたスピル ファイルのサイズ

  • numBytesSpilledEstimate、圧縮前の$groupステージでディスクに書き込まれるバイト数の推定値

詳細については、$sort $groupステージと ステージを参照してください。

MongoDB 6.3 以降では、 serverStatusコマンドとdb.serverStatus()メソッドの出力が次のように変更されます。

MongoDB 6.3 以降では、操作応答の送信時間がslowms しきい値オプションを超えると、ログにメッセージが追加されます。 詳細については、「セッション ワークフロー ログ メッセージ 」を参照してください。

MongoDB 6.3 以降では、次のサーバー パラメータが追加されました。

MongoDB 6.3 では、次の時系列パラメータが追加されました。

  • bucketMaxSpanSeconds は、バケット内の測定間の最大時間範囲を設定します。

  • bucketRoundingSeconds は、新しいバケットの開始タイムスタンプを決定する時間間隔を設定します。

MongoDB 6.3 以降では、 compactコマンドが時系列コレクションで動作します。

MongoDB 6.3 以降、MongoDB は、時系列コレクションの作成時に、metaField フィールドと timeField フィールドに 複合インデックス を自動的に生成します。

MongoDB 6.2 以降では、 validateコマンドとdb.collection.validate()メソッドは次のように動作します。

  • コレクションをチェックして、 BSON ドキュメントが BSON 仕様に準拠していることを確認します。

  • 時系列コレクションの内部データの不整合をチェックします。

  • 包括的な BSON チェックを可能にする新しいオプションcheckBSONConformanceが追加されました。

MongoDB 6.2 以降では、次のデータベースコマンドは非推奨になります。

代わりに、 $collStats$currentOpの集計ステージを使用してください。

MongoDB 6.2 以降では、 serverStatusコマンドの出力に次の新しいフィールドが含まれるようになりました。

MongoDB 6.2 以降では、serverStatus コマンドとdb.serverStatus() メソッドによってopLatencies mongosインスタンスの メトリクスが報告されます。が報告するレイテンシには、mongos インスタンスと インスタンス間の操作レイテンシ時間と通信時間が含まれます。mongodmongos

MongoDB 6.2 以降では、 mongodは次のパラメータを追加します。

バージョン 6.2 以降では、MongoDB は addShard コマンドから maxSize フィールドを削除します。以下はその結果です。

  • maxSize フィールドで addShard を実行すると、InvalidOptions エラーが返されます。

  • shards コレクション内の新しいドキュメントには、maxSize フィールドは含まれなくなりました。

  • 既存の maxSize フィールド エントリはすべて無視されます。

MongoDB 6.1 以降、集計ステージ $addFields$set では、$literal 式を使用せずに空のオブジェクトへのパスを設定できます。

MongoDB 6.1 は、次のクラスター監査するイベントを追加します。

MongoDB 6.1 以降、スタートアップ監査するイベントは次の構造をとります。

{
originalClusterServerParameter: <original parameter value>,
updatedClusterServerParameter": <new parameter value>
}

詳しくは、監査イベントのアクション、詳細、結果をご覧ください。

MongoDB 6.1 以降では、シャーディングされたクラスター内のデータは、チャンクの数ではなくデータサイズに基づいて分散されます。 その結果、シャーディングされたクラスターのデータ分散動作における次の重要な変更に注意する必要があります。

  • バランサーは、チャンクではなくデータの範囲を分散します。 バランシング ポリシーは、チャンク分散ではなくデータ分散の均等性を重視します。

  • チャンクは自動分割の対象となります。 代わりに、チャンクはシャード間で移動された場合にのみ分裂されます。

  • チャンクは範囲と呼ばれるようになりました。

  • moveRange は、moveChunk の後継機能です。

MongoDB 6.1 以降では、ジャーナリングは常に有効になっています。その結果、MongoDB は storage.journal.enabled オプションと、それに対応するコマンドライン オプションの --journal および --nojournal を削除します。

MongoDB 6.1 以降では、currentOp コマンドと db.currentOp() メソッドのリシャーディング用出力が拡張されています。

リシャーディング操作には複数のMongoDBインスタンスが含まれる場合があり、MongoDBインスタンスはリシャーディング操作において異なるロールを果たします。リシャーディング プロセスにおいてホストインスタンスが実行する特定の操作とロールによって、各メトリクスが更新されるタイミングが決まります。

メトリクス
ロールの追跡
説明

opStatus

削除されました。

desc

すべて

実行されたアクションについて説明します。値は次のいずれかです。

  • ReshardingMongoDBService=operationUUID><operationUUID>

  • ReshardingRecipientService<operationUUID>

  • ReshardingCoordinatorService[operationUUID]<operationUUID>

$currentOp の場合、コマンド UUID は各ロールの状態ドキュメントに追加されます。

op

すべて

このメトリクスには「コマンド」という定数値があります。

ns

すべて

リシャーディングされたインデックスの名前空間。値は次の形式の string です: <database>.<collection>

originatingCommand

すべて

操作のコマンド オプションを一覧表示するドキュメント。

donorState

ドナー

ロールのステートマシンの現在の状態。

coordinatorState

コーディネーター

ロールのステートマシンの現在の状態。

recipientState

受信者

ロールのステートマシンの現在の状態。

accumulateDocumentsToCopy

受信者

ソースコレクション内のドキュメントの数。

documentCopied

受信者

すでにコピーされたドキュメントの数。

nearBytesToCopy

受信者

ソースコレクション内のドキュメントの合計サイズ(バイト単位)。

bytesCopied

受信者

コピーされたバイト数。再シャーディングが完了すると、この値は approxBytesToCopy の値と同様になります。

oplogEntriesFetched

受信者

oplogバッファコレクションに書き込まれたoplogエントリの数。

oplogEntriesApplied

受信者

oplogバッファコレクションから適用されたoplogエントリの数。

insertsApplied

受信者

一時的なリシャーディング コレクションに適用された挿入の数。 挿入を含む oplog のエントリごとに、カウンターは 1 ずつ増加します。

updatesApplied

受信者

一時的なリシャーディングコレクションに適用された更新の数。更新を含むoplog のエントリごとに、カウンターは 1 ずつ増加します。

deletesApplyed

受信者

一時的なリシャーディング コレクションに適用された削除の数。 削除を含む oplog エントリごとに、カウンターは 1 ずつ増加します。

totalOperationTimeElastedSecs

すべて

操作が開始されたからの秒数。

totalCopyTimeElapsedSecs

受信者

クローン作成に費やされた秒数。

totalCopyTimeElapsedSecs

コーディネーター

受信者がクローン作成に費やした最大秒数。

totalApplyTimeElapsedSecs

受信者

変更を適用するのに費やされた秒数。

totalApplyTimeElapsedSecs

コーディネーター

受信者が変更を適用するのに費やしたおおよその最大秒数。

totalCertificateSectionTimeElastedSecs

受信者

クリティカル セクションで費やされた秒数。

totalCertificateSectionTimeElastedSecs

コーディネーター

クリティカル セクションが保持できた秒数。

retentionOperationTime EstimatedSecs

受信者

操作が完了するまでの推定秒数。

allShardsLowingOperationTime EstimatedSecs

コーディネーター

全シャードに渡って計算された、推定される残り秒数の最小値です。

allShardsHighestRemainingOperationTime EstimatedSecs

コーディネーター

全シャードにわたって計算された、推定される残り秒数の最高値。

countWritesToStashCollections

受信者

受信者の溜め込みコレクションへの書き込み (write) 回数。

countWritesDuringClientSection

ドナー

ドナーのクリティカル セクション中に試行された書込み (write) の数。

countReadsDuringCriicalSection

ドナー

ドナーのクリティカル セクション中に試行された読み取りの数。

MongoDB 6.1 以降、次の機能を使用できます。

  • MongoDB は効率を向上するために、複数のドキュメントの削除をバッチ処理する場合があります。

  • explain コマンドの結果には、バッチ処理されたドキュメント削除のための新しい BATCHED_DELETE ステージが含まれています。

Perl 互換正規表現( PCRE )は、正規表現によるパターン マッチングを実装するために MongoDB で使用されるライブラリです。 バージョン 6.1 以降、MongoDB はPCREライブラリを PCRE2 にアップグレードします。 PCRE2 は現在のPCREライブラリであり、アクティブに保守および更新されています。

MongoDBで正規表現一致を学ぶには、次のページを参照してください。

MongoDB 6.1 以降では、再試行可能な書き込みの 1 回目と 2 回目の試行の両方が失敗し、書き込みが 1 つも実行されない場合、MongoDB はNoWritesPerformed ラベルの付いたエラーを返します。

NoWritesPerformed ラベルは、insertMany() のようなバッチ操作の結果とを区別します。insertMany 操作では、次のいずれかの結果が発生する可能性があります。

結果
MongoDB 出力

ドキュメントは挿入されません。

NoWritesPerformed ラベルの付いたエラーが返されました。

部分的な作業が完了しました。(少なくとも 1 つのドキュメントが挿入されていますが、すべてではありません。)

NoWritesPerformed ラベルの付いていないエラーが返されました。

すべてのドキュメントが挿入されます。

成功が返されました。

アプリケーションは NoWritesPerformed ラベルを使用して、ドキュメントが挿入されていないことを明確に判断できます。このエラー報告により、アプリケーションは再試行可能な書き込みを処理する場合にデータベースの正確な状態を維持できます。

前のバージョンの MongoDB では、再試行可能な書き込みの 1 回目と 2 回目の両方が失敗するとエラーが返されました。ただし、書き込みが実行されなかったことを示す区別はありません。

MongoDB 6.1 以降では、再シャーディングが利用可能な新しいメトリクスが利用できます。次のコマンドの出力が変更されました。

MongoDB 6.1 以降、MongoDB は、次の新しいパラメーターを追加します。

MongoDB 6.1以降では、 serverStatusコマンドとdb.serverStatus()メソッドの出力が次のように変更されます。

resharding.remainingOperationTimeEstimatedMillis は以下に置き換えられます。

  • oplogApplierApplyBatchLatencyMillis

  • collClonerFillBatchForInsertLatencyMillis

まれに、キャッシュの負荷により書込み (write) が失敗する場合があります。このような状況が発生すると、MongoDB では、TemporarilyUnavailable エラーを発行し、スロー クエリ ログとフルタイム診断データ取得(FTDC)の 2 か所で temporarilyUnavailableErrors カウンターの値を増加させます。

マルチドキュメントトランザクション内の個々の操作では、TemporarilyUnavailable エラーは返されません。

temporarilyUnavailableBackoffBaseMs パラメータと temporarilyUnavailableMaxRetries パラメータを変更して、書き込み再試行プロパティを調整します。

MongoDB 6.1 以降では、正規表現クエリに *UCP オプションを使用できます。*UCP オプションは非 ASCII 文字と一致します(具体的には、 オプションは UTF-8 文字と一致します)。ただし、*UCP オプションでは、オプションが指定されていないクエリよりもクエリが遅くなります。

*UCP オプションを使用する例については、正規表現オプション拡張を使用して ASCII 以外の文字と一致させる を参照してください。

重要

機能の互換性バージョン

MongoDB 6.0 配置から MongoDB 7.0 にアップグレードするには、6.0 配置で featureCompatibilityVersion6.0 に設定する必要があります。バージョンの確認方法

db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )

MongoDB 7.0 にアップグレードするには、MongoDB 配置に固有のアップグレード手順を参照してください。

7.0 へのアップグレードに関するガイダンスが必要な場合は、MongoDB プロフェッショナル サービスがメジャー バージョン アップグレード サポートを提供して、MongoDB アプリケーションを中断することなくスムーズに移行できるようにします。詳細については、MongoDB コンサルティングを参照してください。

MongoDB は 1 つのバージョンのダウングレードのみをサポートします。現在のリリースより数バージョン前のリリースにダウングレードすることはできません。

例、7.0 シリーズの配置を 6.0 シリーズにダウングレードできます。ただし、6.0 シリーズの配置から 5.0 シリーズの配置へのさらなるダウングレードはサポートされていません。

MongoDB 7.0 以降:

  • MongoDB コミュニティ エディション ではバイナリー ダウングレードはサポートされなくなりました。

  • 配置の fCV を MongoDB の Rapid Release バージョンにダウングレードしたり、Rapid Release バージョンから任意のバージョンにダウングレードしたりすることはできません。

  • setFeatureCompatibilityVersion コマンドには追加のパラメーター confirm が必要です。fCVアップグレードまたはダウングレードするには、このパラメーターを true に設定する必要があります。

  • 配置の FCv をアップグレードまたはダウングレードする場合、サポートの支援なしにエンタープライズ配置のバイナリ バージョンをダウングレードすることはできません。

MongoDB 7.0 には、以前のリリースと互換性のない機能が含まれています。7.0 から以前のリリースにダウングレードするには、これらの機能を使用するデータを削除する必要があります。

詳しくは、「下位互換性のない機能」を参照してください。

MongoDB 7. 0 をダウンロードするには、MongoDB ダウンロードセンターにアクセスします。

問題を報告するには、MongoDB GitHub リポジトリで、MongoDB サーバーまたは関連プロジェクトのいずれかに対して JIRA チケットを提出する手順を参照してください。

戻る

変更履歴

項目一覧