Tsurugi 1.9.0 - Release Notes (ja) #207
akirakw
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
1.9.0 リリースノート
概要
Tsurugi 1.9.0 では SQL関連の機能追加として
WITH句(共通テーブル式: CTE)に対応しました。WITH句は SQL クエリー内で名前付きの部分クエリーを定義するための構文です。WITH句を用いることで複雑なクエリーを分割して段階的に記述し、可読性や再利用性の高いクエリーを作成することができます。また、UDF の機能拡張としてユーザー定義表値関数(UDTF: User-Defined Table-valued Function)に対応しました。
ユーザー定義表値関数は、戻り値として複数行・複数列の表値(テーブル)を返す関数を定義することができます。
この機能に伴い、ユーザー定義表値関数を実行するためのSQL拡張構文である
APPLY演算子を追加しました。その他 UDF の改善として、複数のUDFプラグインがデプロイできない制約を解消しました。
この修正に伴い
udf-plugin-builderの仕様が一部変更されています。その他、本バージョンではいくつかの重要な不具合修正や安定性の向上を行っています。
前バージョンを利用するすべてのユーザーは本バージョンへのアップグレードを強く推奨します。
機能追加と改善
機能追加と改善 - SQL
WITH句 (共通テーブル式 : CTE) に対応WITH句はSQLクエリー内で名前付きの部分クエリーを定義するための構文です。クエリー内で複数の仮想テーブルを定義し、前段で定義した仮想テーブルの結果を後続の仮想テーブルで参照することができます。WITH句を用いることで複雑なクエリーを分割して段階的に記述し、可読性や再利用性の高いクエリーを作成することができます。WITH句に関するSQL文法の詳細は、以下のドキュメントを参照してください。WITH RECURSIVE句(再帰的な共通テーブル式 : 再帰CTE)には対応していません。将来のバージョンでの対応を検討しています。JOIN句の結合優先順位の指定に対応t1 JOIN (t2 JOIN t3 ON ...) ON ...のような記法をサポートしました。これにより、結合の優先順位を明示的に指定することができるようになりました。機能追加と改善 - UDF
APPLY演算子を使ってFROM句内で呼び出すことができます。tsurugidb.udfメッセージ型を含む UDF プラグインを複数デプロイすることができない制約を解消tsurugidb.udfメッセージ型を利用するUDF プラグインを複数デプロイすると、Tsurugi 起動時にエラーとなるという問題がありましたが、今回のバージョンでこの制約を解消しました。udf-plugin-builderの仕様や動作が一部変更になっています。主な変更点は以下の通りです。.protoファイルに対して常に1つの共有ライブラリファイル (.so) が生成されるように変更。これに伴い--nameオプションを廃止。--proto-fileオプションが--protoオプションに変更。--proto-pathオプションが-I(--include) オプションに変更。複数のパスを指定する場合は、スペース区切りで複数回指定する形式に変更 (-I /path_1 -I path_2のように指定)。udf-plugin-builderを用いてUDFプラグインを再生成してデプロイする必要があります。udf-plugin-builderの詳細は udf-plugin -udf-plugin-builderを参照してください。機能追加と改善 - Distribution
バグ修正
バグ修正 - SQL
GROUP BY句を含むクエリーを実行するとデータベースが不正終了する。バグ修正 - UDF
tsurugidb.udf.OffsetDatetime型でUTC以外のtime_zone_offsetを持つ値を gRPCサービス 側に渡した際にその値に含まれるoffset_secondsフィールドが不正な値となるバグ修正 - Client
tgsqlを終了した際にサーバ側に使用したセッションがクローズされずに残ることがあるtgsql --exec) を利用する場合にこの問題が発生しやすいことを確認しています。tgsqlのコネクション終了に伴うセッションのシャットダウン動作を指定するオプション--shutdown-type,--shutdown-timeoutが追加されました。詳細は以下のドキュメントを参照してください。アップグレードについて
クライアント互換性リスト
Tsurugi 1.9.0 では 以下のクライアントに対応しています。
Tsurugi のアップグレードに併せて、必要に応じて各クライアントをアップグレードしてください。
アップグレード手順
旧バージョンからのアップグレード手順については、以下のドキュメントを参照してください。
その他
本バージョンにおける変更内容の一覧は、以下のChangelogを参照してください。
本バージョンに対する既知の問題、および本バージョンにて修正された問題の補足情報については、以下のリンクを参照してください。
Beta Was this translation helpful? Give feedback.
All reactions