Docs Menu
Docs Home
/ /
Kotlin コルーチン

新機能

次の新機能をご覧ください。

5.0 ドライバー リリースの新機能は次のとおりです。

  • KotlinSerializerCodecProviderコンストラクターがserializersModule bsonConfigurationオブジェクトと オブジェクトを受け入れるようになりました。

    KotlinSerializerCodec.create(clazz.kotlin, serializersModule=serializersModule, bsonConfiguration=bsonConfiguration)

    これにより、構成をカスタマイズしやすくなります。

  • コンテナ タイプの消去につながる Kotlin 反映バグを修正します。

このセクションには、次の情報が含まれています。

警告

このリリースの廃止

ドライバーの将来のメジャー リリースで重大な変更を避けるため、非推奨のメソッドとタイプに依存するすべてのアプリケーション コードを置き換えます。

4.11 ドライバー リリースでは、次の項目が非推奨になります。

  • 次のネットワーク アドレス関連のメソッドは非推奨であり、v5.0 で削除されます。

    • ServerAddress メソッドは getSocketAddress() メソッドと getSocketAddresses() メソッドです。

      getSocketAddress()の代わりに、 java.net.InetAddressgetByName()インスタンス メソッドを使用します。

      getSocketAddresses()の代わりに、 java.net.InetAddressgetAllByName()インスタンス メソッドを使用します。

    • UnixServerAddress メソッド getUnixSocketAddress()

      getUnixSocketAddress() の代わりに jnr.unixsocket.UnixSocketAddress のインスタンスを構築します。コンストラクターに UNIX ソケットファイルのフル パスを渡します。デフォルトでは 、 MongoDB は"/tmp/mongodb-27017.sock" に配置された UNIX ソケットファイルを作成します。UnixSocketAddress の詳細については、UnixSocketAddress APIドキュメントを参照してください。

  • StreamFactory インターフェースに関連する次のメソッドとタイプは非推奨となり、 v5.0 で削除される予定です。

    • streamFactoryFactory() メソッド MongoClientSettings.Builder

    • getStreamFactoryFactory() メソッド MongoClientSettings

    • NettyStreamFactoryFactory クラス

    • NettyStreamFactory クラス

    • AsynchronousSocketChannelStreamFactory クラス

    • AsynchronousSocketChannelStreamFactoryFactory クラス

    • BufferProvider クラス

    • SocketStreamFactory クラス

    • Stream クラス

    • StreamFactory クラス

    • StreamFactoryFactory クラス

    • TlsChannelStreamFactoryFactory クラス

    MongoClientSettings.Builder.streamFactoryFactory()を使用して Netty を構成する場合、コードは次のようになります。

    import com.mongodb.connection.netty.NettyStreamFactoryFactory;
    // ...
    MongoClientSettings settings = MongoClientSettings.builder()
    .streamFactoryFactory(NettyStreamFactoryFactory.builder().build())
    .build();

    次の例に示すように、このコードを TransportSettings.nettyBuilder() に置き換えます。

    import com.mongodb.connection.TransportSettings;
    // ...
    MongoClientSettings settings = MongoClientSettings.builder()
    .transportSettings(TransportSettings.nettyBuilder().build())
    .build();

4.11 ドライバー リリースの新機能には、次のものが含まれます。

  • SOCKS5 プロキシを使用した MongoDB への接続のサポート。

  • 16 MB を超える 変更ストリーム イベントのフラグメントを識別するために、 ChangeStreamDocumentクラスにgetSplitEvent()メソッドを追加しました。 16 MB を超えるイベントを処理するには、変更ストリームの集計ステージ$changeStreamSplitLargeEventを使用する必要があります。

  • $vectorSearchの集計ステージ ビルダを追加しました。

  • Atlas Search インデックス マネジメント ヘルパーを追加しました。

  • Snappyおよびzstd圧縮ライブラリの依存関係バージョンを更新しました。 現在の依存関係バージョンの詳細については、「 ネットワーク圧縮 」を参照してください。

  • 接続プール イベントの期間をモニタリングするために、次のクラスにgetElapsedTime()メソッドを追加しました。

  • Java 21 仮想スレッドと構造化同時実行性のサポート。 仮想スレッドの不要な固定を回避し、スレッドの中断された状態を保持するようにドライバー内部がアップデートされました。後者はキャンセルに使用される構造化同時実行性において重要であるためです。

    仮想スレッドの詳細については、Virtual Threads JDK の拡張提案」を参照してください。構造化同時実行の詳細については、構造化同時実行 JDK 機能強化の提案 を参照してください。

  • 次のタイプの API ドキュメントを更新しました。

重要

Kotlin ドライバーのバージョン 4.10.1 以降で、 kotlinx-serializationライブラリを使用するには、 bson-kotlinxライブラリを明示的な依存関係として追加する必要があります。

  • コルーチンと同期アプリケーションの両方で、 Kotlin サーバーサイドでの使用をサポートします。

  • Kotlin データ クラスのコーデック サポート。

  • kotlinx.serializationライブラリのサポート

戻る

クイック リファレンス

項目一覧