Kompira enterprise v2.0.5.post3 をリリース

Kompira enterprise v2.0.5.post3 をリリースしました。
合わせて ke2-docker と KE2.0管理者マニュアルも更新していますので、以下もご確認ください。

コンテナイメージ

kompira.azurecr.io/kompira-enterprise:2.0.5.post3

修正

  • リモートジョブの中止時に、停止対象のリモート接続やコマンドプロセスが既に終了しているタイミングで、kompira_jobmngrd に無害な例外がエラーログ (トレースバック付き) として出力されることがある問題を改善しました。中止が正常に進んだ想定内のケースとして扱い、不要なエラーログを抑止しています。
  • ジョブ実行プロセス (Worker) やその子プロセスの停止処理でも、既に終了しているプロセスに対する操作で同様の無害なエラーログが出力されることがある問題を改善しました。
  • Windows リモートジョブ (winrs/WinRM) の中止時に、Ctrl-C を無視するコマンドがキャンセルされずリモートで実行され続ける場合がある問題を修正しました。他のリモート/ローカルジョブと同様、キャンセル後 cancel_timeout 経過で強制終了 (WSMan terminate) へエスカレーションするようにしています。
  • kompira_jobmngrd で、内部の補助プロセスとの通信が一時的に途切れた際にジョブの実行準備に失敗したり、その補助プロセスが残存したりしないよう堅牢化しました。
  • リモートジョブの実行中に Worker プロセスの異常終了・セッション終了処理のハング・キャンセルの取りこぼし等が起きると、ジョブ結果が kompirad に返らずジョブフローが進行中のまま停止する場合がある問題を修正しました。これらのケースで代行結果メッセージを発行し、各種 watchdog で結果が必ず返るようにしています。
  • リモートジョブのキャンセルが効かず、SIGINT を無視するコマンドなどで Worker がコマンドを実行し続ける場合がある問題を修正しました。キャンセル後に一定時間 (cancel_timeout) 経過しても終了しない場合は強制終了へエスカレーションするようにしています。
  • ジョブフローの中止・終了後も kompira_jobmngrd の Worker プロセスが SessionJob を実行状態のまま保持し続ける場合がある問題を修正しました。
  • manage.py process の制御系コマンド (-T/–terminate, -S/–suspend, -R/–resume) で EngineClient のメソッドを engine_id 引数なしで呼び出しており “missing 1 required positional argument: ‘pid'” エラーになっていた不具合を修正しました。

変更

  • uWSGI のワーカ並列度・タイムアウト系 (processes / threads / listen / harakiri / thunder-lock) を docker-entrypoint.sh の環境変数で設定可能にしました。高負荷時に .wait / .recv が Web ワーカを長時間占有して画面全体が枯渇する事象に対し、同時処理数を引き上げて緩和できます。既定値は従来挙動を維持します。

マニュアル

  • 英語翻訳の誤字を修正しました (Exract, configurtion, Authentification, Preperation, suspeneded)。
  • マニュアルの構文説明中の擬似識別子(オブジェクト名・変数名・バージョン番号など)の表記を <…>(山括弧)プレースホルダに統一しました。

注意点

  • Ver.2.0.2 でライセンス管理における system_id の算出方法が変わりました。Ver.2.0.1以前からアップデートする場合は、ライセンスを再発行して適用していただく必要があります。
TOP