注目すべき問題
XA接続用のpinGlobalTxToPhysicalConnectionの実装
新しいBooleanオプション pinGlobalTxToPhysicalConnectionを有効にすると、特定のXIDの操作が同じ接続にルーティングされ、XA ENDが呼び出された時にXA START
これにより、次のようなエラーが防止されます:
XA resource 'xaDataSource': resume for XID 'XID: ' raised -5: invalid arguments were given for the XA operation
ホストの記述の強化
サーバーに接続するためのホストの記述が、
address=(host=|localSocket=|pipe=)[(port=)][(type=(master|slave))][(sslMode=disable|trust|verify-ca|verify-full)]
例:
jdbc:mariadb:sequential://address=(localSocket=/socket),address=(host=10.0.0.1)(port=3306)(sslMode=verify-full)/DB
この接続文字列では、ローカルのUNIXソケットが使用可能な場合はそのソケットを使用でき、UNIXソケットが使用できない場合はSSLでホスト 10.0.0.1を使用できます。
詳細なホスト記述オプションは、グローバルオプションの記述よりも優先されます。前の例は、両方のホストオプションに異なるSSLモードを定義して、次のように記述することもできます:
jdbc:mariadb:sequential://address=(localSocket=/socket)(sslMode=disable),10.0.0.1:3306/DB?sslMode=verify-full
databaseTermエイリアスの追加
オプション useCatalogTermには、MySQLコネクタ互換性のためのエイリアス databaseTermがあります
修正された問題
- プリペアドステートメントのキャッシュのステートメントの検証では、異なるスキーマの使用が考慮されていないため、同じステートメントが異なるスキーマで実行されると、予期しない動作が発生する可能性があります
- NON UNIQUE制約を使用する場合、DatabaseMetaData.getImportedKeysはDatabaseMetaData.getExportedKeysとは異なるPK_NAME値を返します
- 関数 DatabaseMeta.getExportedKeys()のパフォーマンスが遅い
- Androidアプリの非互換性、正規表現 CANON_EQフラグは、Android OSではサポートされていません
- データベースメタ getSQLKeywordsは、制限されたキーワードだけでなく、全ての予約済みキーワードをリストしています
- 関数メタデータ getImportedKeysは、データベースが設定されていない場合に遅い
- 関数 ResultSetMetaData.getColumnTypeName()は、TINYTEXT型の列に対してTINYTEXT型ではなくVARCHAR型を返します
- エラー XA_RBTIMEOUT、XA_RBTIMEOUT、およびXA_RBDEADLOCKのエラーマッピングがありません
MariaDB Connector/J 3.4.1のリリースノート(MariaDB社ウェブサイト):
https://mariadb.com/docs/server/release-notes/mariadb-connector-j-3-4/3-4-1/
MariaDBプロダクト・サポート・サービス
MariaDBプロダクト・サポート・サービスは、MariaDBおよびその関連製品をご利用されているお客様へ、必要なソフトウェアや専門的なサポートなどを提供するサービスです。