What’s new in v23.2LTS-patch20240209
New builtins
- CLG instance, Closedloop Instanceで実行中のk8s Jobの一覧取得に対応しました。
>>> print(await CLG().listJobStatus())↵
... ↵
↵
[{'closedLoopInstanceUniqueId': '8fa641e4cfac11ee875e2e5ad9328a88', 'currentClosedLoopLifeCyclePhase': 'operation', 'closedLoopPriority': 100, 'closedLoopTypeDescription': 'update', 'createdAt': datetime.datetime(2024, 2, 20, 13, 57, 35), 'jobStatus': {'active': 1, 'completed_indexes': None, 'completion_time': None, 'conditions': None, 'failed': None, 'failed_indexes': None, 'ready': 1, 'start_time': datetime.datetime(2024, 2, 20, 4, 57, 45, tzinfo=tzlocal()), 'succeeded': None, 'terminating': None, 'uncounted_terminated_pods': {'failed': None, 'succeeded': None}}}]
>>> r = await ClosedLoop.load("8fa641e4cfac11ee875e2e5ad9328a88")↵
... print(await r.listJobStatus())↵
... ↵
↵
[{'closedLoopInstanceUniqueId': '8fa641e4cfac11ee875e2e5ad9328a88', 'currentClosedLoopLifeCyclePhase': 'operation', 'closedLoopPriority': 100, 'closedLoopTypeDescription': 'update', 'createdAt': datetime.datetime(2024, 2, 20, 13, 57, 35), 'jobStatus': {'active': 1, 'completed_indexes': None, 'completion_time': None, 'conditions': None, 'failed': None, 'failed_indexes': None, 'ready': 1, 'start_time': datetime.datetime(2024, 2, 20, 4, 57, 45, tzinfo=tzlocal()), 'succeeded': None, 'terminating': None, 'uncounted_terminated_pods': {'failed': None, 'succeeded': None}}}]
New service
- GET /closedloopgovernance,- GET /closedloopgoverance/{closedloopInstanceUniqueId}APIで実行中のk8s Jobの一覧取得に対応しました。クエリの指定の仕方により、追加で指定可能なクエリおよび返却される情報が変わります。
MnSクエリ
| MnS | type | Summary | 
|---|---|---|
| None | NoneType | CLGもしくは対応するコンテナログを返却します。 | 
| JobStatus | str | k8s Jobの状態を返却します。 | 
| Statistics | str | CLGの統計情報を返却します。 | 
| All | str | CLGの詳細情報を返却します。 | 
共通クエリ
| Query | type | Summary | 
|---|---|---|
| offset | int | 返却されうる全情報のうち、返却開始位置を指定します。 | 
| limit | int | 返却されうる全情報のうち、返却終了位置を指定します。 | 
その他クエリ
| MnS指定 | 利用可能Query | type | Summary | 
|---|---|---|---|
| None | lines | int | kubernetes pod logの終端から出力する行数を指定します。 | 
| None | since_seconds | int | 現在時刻からログを取得する範囲を秒数で指定します。 | 
| None | closedLoopPriority | int | |
| JobStatus | closedLoopInstanceUniqueId | str | |
| JobStatus | currentClosedLoopLifeCyclePhase | str | |
| JobStatus | fromCreatedAt | str | "YY-MM-DD hh:mm:ss"形式で指定します。 | 
| JobStatus | toCreatedAt | str | "YY-MM-DD hh:mm:ss"形式で指定します。 | 
| All | closedLoopPriority | int | |
| All | closedLoopTypeDescription | str | |
| All | currentClosedLoopLifeCyclePhase | str | 
Tips
linesとsince_secondsはpath末尾にclosedLoopInstanceUniqueIdを指定し、かつ両方のクエリパラメータ指定した場合にのみ有効となり、pod内のコンテナログを取得します。
リクエスト例: GET /closedloopgovernance/72b439fcd6bd11ee9ceec628090d2da9?lines=50&since_seconds=3600
- ClosedLoopを実行しているコンテナのAPIGWエンドポイントを指定する起動パラメーター--closedloop_default_apigw_hostを追加しました。 (issue#167)
General changes
- GET /closedloopgoverance/{closedloopInstanceUniqueId}のレスポンスボディのトップ階層が配列から辞書に変更されます。(- issue#176)
- ClosedLoopインスタンスのstatusがOperationでかつjobが作成されていない状態でdecomissioningに遷移させた場合に例外をスローする仕様を削除しました。
- Error組み込みオブジェクトにバインドされる例外がaxis.hotspot.exceptions.HotspotExceptionからaxis.hotspot.exceptions.UserExceptionに変更されます。
Warning
v23.2LTS-patch20240209では修正箇所が不十分であるため、toyblock内のErrorオブジェクトをraiseする位置によりresponse bodyが想定のものとならないことを確認しております。こちらについてはv23.2LTS-patch20240311で修正されておりますので、後発のpatchの利用をご検討ください。
- インタラクティブシェルで非対応の代入演算子に対応しました。
>>> t1 = "hoge"↵
... t2 = "fuga"↵
... t1 += t2↵
... t1↵
... ↵
↵
hogefuga
- read-onlyであるmysqlインスタンスへの接続を回避する仕様が追加されます。
Bug fixes
- atom変更時にキャッシュされているクラス情報が最新化されない問題への対応 (#issue163)
- DAGで実行されないことが期待されるタスクが実行されてしまう問題への対応 (issue#166)
- Out of Serviceの状態でClosedloopの処理が正しく実行されなくなる問題への対応 (#issue169)
- ignore_null_fieldオプションがネストされたarray/objectに効いていない問題への対応(#issue170)
- callout関数を使用したtoken refleshが正しく動作しないことがある場合への対応(#issue171)
- sendmail関数においてstart_tls=Trueにした場合に正しく動作しない問題への対応(#issue172)
- Testcaseでのassertion_progress部を定義した場合、試験実行時に想定動作しない問題への対応(#issue174)
- GET /heartbeat?cluster=trueのレスポンスbodyが正しくない場合がある問題への対応(- #issue180)
- Crash Recoveryが意図しないタイミングで発生してしまう場合がある問題への対応(#issue182)