次の新機能をご覧ください。
1.15の新機能
1.15 Go ドライバーのリリースには、次の改善点と修正が含まれています。
接続チャーンは、
timeoutMS
接続オプションを指定するか、 SetTimeout() 関数を呼び出して、クライアント全体のタイムアウトを設定することで軽減できます。タイムアウトが設定されている場合、ドライバーは操作がタイムアウトした後に接続の再利用を試み、最大 1 秒間待機して接続が再利用できるかどうかを確認してから、接続を閉じます。接続プール イベントには、チェックアウト期間と接続を確立するための合計時間数を測定するための
Duration
フィールドが含まれています。
1.14の新機能
1.14 Go ドライバーのリリースには、次の改善点と修正が含まれています。
1.18より前の Go バージョンはサポートされなくなりました。
ハートビート タイムアウトが発生した場合、進行中の操作は先行してキャンセルされます。
"mongodb+srv://"
プレフィックスを含む接続文字列では、SRV ホスト名に大文字を含めることができます。
1.13の新機能
1.13 Go ドライバーのリリースには、次の改善点と修正が含まれています。
サーバー選択と SDAM のログ。 ロギングについて詳しくは、 のログドキュメントを参照してください。
検索インデックスをプログラムで管理できる
Collection
型のメソッド。event.CommandStartedEvent
イベントとevent.CommandFinishedEvent
イベントはDatabaseName
フィールドを返します。 このフィールドは、 コマンド ログ アナライザにも含まれます。シャーディングされたトポロジーでは、失敗したクエリを再試行するためにサーバーを選択するときに、ドライバーは最初の試行に使用されたサーバーを除外します。 代わりに、適格な
mongos
インスタンスが複数ある場合、ドライバーはランダムに 1 つを選択します。 正常でない インスタンスは、自動的に選択対象から除外されます。ストリーミング SDAM は、 Amazon Web Services Lambdaおよび同様のFaaS(function-as-a-service)プラットフォームではデフォルトで無効になっています。
serverMonitoringMode
URI オプションを使用してモニタリングを有効にできます。
1.12.1の新機能
1.12 Go ドライバーのリリースには、次の改善点と修正が含まれています。
ドライバーはセッションを終了するときに接続の固定を解除します。 これにより、ユーザーがロード バランサーに接続しているときにトランザクションを実行するときに接続がリークされるのを防ぎます。
無効な型で空の
bson.RawValue
型をアンマーシャリングしたり、ReadConcern
インスタンスのnil
ポインターをマーシャリングしたりしても、ドライバーはランタイム エラーをスローしません。ログ コンポーネントとして
options.LogComponentAll
を正しく設定すると、すべてのコンポーネントに対するログが公開されます。
1.12の新機能
重要
非推奨に関する通知
mongo.NewClient()
メソッドとclient.Connect()
メソッドは非推奨です。mongo.Connect()
メソッドを使用すると、クライアントを作成し、1 回の呼び出しで接続できます。
1.12の新機能 Go ドライバーのリリースには、次のものが含まれます。
Queryable Encryption
このドライバー バージョンは、 Queryable Encryption (QE)のサポートを追加します。 QE 機能を使用するための要件の詳細については、「 Queryable Encryption ドライバーの互換性テーブル 」を参照してください。
ClientEncryption.CreateEncryptedCollection()
メソッドは、新しい 暗号化されたコレクションを作成するときに、データ暗号化キーを自動的に作成します。QE 機能の使用方法については、サーバー マニュアルのQueryable Encryptionクイック スタートを参照してください。
ログ記録インターフェース
LogSink
ロギング インターフェースを使用して、接続マネジメントとコマンド実行イベントを記録できるようになりました。
詳しくは、「ログの基礎 」ガイドを参照してください。
追加の BSON マーシャリング オプション
このドライバー バージョンは、ドライバーが BSON をマーシャリングおよびアンマーシャリングする方法を指定する機能をoptions
パッケージに追加します。
次の例は、 Client
で BSON オプションを設定する方法を示しています。 オプションは、次の動作を指定します。
bson
構造体タグが存在しない場合、ドライバーはjson
構造体タグにフォールバックします。ドライバーは
nil
Go マップ型を空の BSON ドキュメントとしてマーシャリングします。ドライバーは
nil
Go スライス タイプを空の BSON 配列としてマーシャリングします。
bsonOpts := &options.BSONOptions{ UseJSONStructTags: true, NilMapAsEmpty: true, NilSliceAsEmpty: true, } options.Client().SetBSONOptions(bsonOpts)
BSONOptions
型を指定して実装する方法の完全な例については、 APIドキュメントを参照してください。
簡略化された書込み保証 (write concern) の仕様
このドライバー バージョンにより、 WriteConcern
API が簡素化されます。 変更の詳細については、「 書込み保証 ( write concern) 」を参照してください。
追加の変更
EKS のAmazon Web Services IAM ロールによる認証をサポートします。
カーソルの反復処理時に取得されるバッチのサイズを指定できるようにするための
Cursor.SetBatchSize()
メソッドの追加。MarshalValue()
メソッドでマーシャリングされた BSON 値のマーシャリングを可能にするためのUnmarshalValue()
メソッドの追加。