Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
Go Driver
/

ドライバーのバージョンをアップグレードする

このページでは、 Goドライバーの新しいバージョンにアップグレードするときにアプリケーションに加える必要がある変更について説明します。

アップグレードする前に、次のアクションを実行してください。

  • 新しいGoドライバー バージョンが、アプリケーションが接続するMongoDB Server のバージョン およびアプリケーションを実行するGoバージョンと互換性があることを確認します。詳細については、互換性 ページを参照してください。

  • アプリケーションで使用されるドライバー バージョンと計画されているアップグレード バージョン間の重大な変更については、 重大な変更 セクションを参照してください。

Tip

将来ドライバーのバージョンをアップグレードする際にアプリケーションに必要な変更数を最小限に抑えるには、 Stable API を使用します。

重大な変更とは、ドライバーの特定のバージョン以降の規則または動作の変更です。 このタイプの変更では、ドライバーをアップグレードする前に対処しないと、アプリケーションが正常に動作しなくなる可能性があります。

このセクションの重大な変更は、それを導入したドライバーのバージョンによって分類されます。 ドライバーのバージョンをアップグレードするときは、現在のバージョンとアップグレードのバージョン間のすべての重大な変更に対処してください。

  • MongoDB Server v3.6 のサポートを削除します。サポートされるMongoDB Server の最小バージョンは v4.0 になりました。これにより、 MONGODB-CR認証メカニズムのサポートも終了します。MongoDB Server のバージョンとの互換性の詳細については、互換性参照 を参照してください。

  • mongo.Connect() は、Context パラメータを受け入れません。このメソッドは オプションオブジェクトのみを受け入れます。このメソッドを使用する例については、接続ガイドの「接続サンプル コード」を参照してください。

  • Cursor.SetMaxTime() メソッドの名前が Cursor.SetMaxAwaitTime() に変更されます。 このメソッドは、追尾可能 (tailable) カーソルを使用して、 Cappedコレクションから取得された新しいドキュメントをサーバーが待機する最大時間を指定します。

  • 操作固有のタイムアウト オプションを排除します。 次のフィールドと setter メソッドはドライバーから削除されました。

    • AggregateOptions.MaxTime, AggregateOptions.SetMaxTime()

    • ClientOptions.SocketTimeout, ClientOptions.SetSocketTimeout()

    • CountOptions.MaxTime, CountOptions.SetMaxTime()

    • DistinctOptions.MaxTime, DistinctOptions.SetMaxTime()

    • EstimatedDocumentCountOptions.MaxTime, EstimatedDocumentCountOptions.SetMaxTime()

    • FindOptions.MaxTime, FindOptions.SetMaxTime()

    • FindOneOptions.MaxTime, FindOneOptions.SetMaxTime()

    • FindOneAndReplaceOptions.MaxTime, FindOneAndReplaceOptions.SetMaxTime()

    • FindOneAndUpdateOptions.MaxTime, FindOneAndUpdateOptions.SetMaxTime()

    • GridFSFindOptions.MaxTime, GridFSFindOptions.SetMaxTime()

    • CreateIndexesOptions.MaxTime, CreateIndexesOptions.SetMaxTime()

    • DropIndexesOptions.MaxTime, DropIndexesOptions.SetMaxTime()

    • ListIndexesOptions.MaxTime, ListIndexesOptions.SetMaxTime()

    • SessionOptions.DefaultMaxCommitTime, SessionOptions.SetDefaultMaxCommitTime()

    • TransactionOptions.MaxCommitTime, TransactionOptions.SetMaxCommitTime()

    • WriteConcern.WTimeout

    代わりに、クライアントまたはコンテキスト内でタイムアウトを設定できます。詳細については、 「サーバー実行時間の制限」ガイドをご覧ください。

  • bson/primitiveパッケージの削除。このパッケージは bsonパッケージと統合されました。コードを更新するには、bson/primitive インポート ステートメントをすべて削除し、primitive.ObjectID のインスタンスを bson.ObjectId に変更します。

戻る

互換性

項目一覧