Automation for Jira - すべてのルールが「進行中」ステータスのまま停止する

プラットフォームについて: Data Center のみ。 - この記事は、 Data Center プラットフォーム

この KB は Data Center バージョンの製品用に作成されています。Data Center 固有ではない機能の Data Center KB は、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。 Server* 製品のサポートは 2024 年 2 月 15 日に終了しました。Server 製品を実行している場合は、 アトラシアン Server サポート終了 のお知らせにアクセスして、移行オプションを確認してください。

*Fisheye および Crucible は除く

要約

監査ログによると、「進行中」ステータスのまま停止しているために、すべての自動化ルールが完了しません。

監査ログ

さらに、「スケジュール設定済み」トリガーを使用するルールで [トリガーの自動化] ボタンを使用すると、以下のエラーが原因でルールが完了しません。

1 There was an unexpected error while executing rule. Please contact your administrator.
予期しないエラー

このナレッジ ベース記事の目的は、これらの症状の考えられる根本原因、その特定方法、および問題の解決方法を説明することです。

診断

  • Jira アプリケーション ログで次のエラーを探してください。これは、Jira アプリケーションが Automation for Jira で使用される DB テーブル AO_589059_RULE_STAT に新しい行を挿入できていないことを示しています。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 2023-11-07 08:33:27,425+0000 http-nio-8080-exec-32 ERROR admin 513x394x1 e7r8xg 172.29.213.228,172.50.0.2 /rest/cb-automation/latest/project/GLOBAL/rule/1/execute [c.c.j.p.a.service.execution.JiraThreadLocalExecutor] Unexpected error in thread local executor with actorKey 'admin'. com.querydsl.core.QueryException: Caught SQLIntegrityConstraintViolationException for insert into "AO_589059_RULE_STAT" ("AUDIT_ID", "CATEGORY", "CREATED", "DURATION", "RULE_ID", "EVENT_HASH", "QUEUED_ITEM_COUNT") values (?, ?, ?, ?, ?, ?, ?) at com.querydsl.sql.DefaultSQLExceptionTranslator.translate(DefaultSQLExceptionTranslator.java:50) at com.querydsl.sql.Configuration.translate(Configuration.java:459) at com.querydsl.sql.dml.SQLInsertClause.execute(SQLInsertClause.java:445) at com.codebarrel.jira.plugin.automation.store.JiraRuleStatisticsStore.lambda$storeRuleStatistic$1(JiraRuleStatisticsStore.java:78) at com.codebarrel.data.api.jira.JiraDbConnectionManager.lambda$executeWithRetry$1(JiraDbConnectionManager.java:55) at com.atlassian.fugue.retry.RetrySupplier.get(RetrySupplier.java:93) at com.codebarrel.data.api.jira.JiraDbConnectionManager.lambda$executeWithRetry$2(JiraDbConnectionManager.java:55) ... Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-01400: cannot insert NULL into ("ATLASSIAN"."AO_589059_RULE_STAT"."ID")
  • 次の手順に従って、DB テーブル AO_589059_RULE_STAT が欠如していないかどうか、Oracle トリガーを確認します。

    • Jira アプリケーションがデータベースへの接続に使用するのと同じユーザーで Oracle DB にログインし、次の SQL クエリを実行します。

      1 select * from user_triggers where "TRIGGER_NAME" = 'AO_589059_RULE_STAT_ID_autoinc';

    • 通常、このクエリは下に示すような行を返します。ここから、テーブル AO_589059_RULE_STAT が使用する user_triggers テーブルにトリガーがあることがわかります。

      1 2 3 4 5 6 7 "TRIGGER_NAME","TRIGGER_TYPE","TRIGGERING_EVENT","TABLE_OWNER","BASE_OBJECT_TYPE","TABLE_NAME","COLUMN_NAME","REFERENCING_NAMES","WHEN_CLAUSE","STATUS","DESCRIPTION","ACTION_TYPE","TRIGGER_BODY","CROSSEDITION","BEFORE_STATEMENT","BEFORE_ROW","AFTER_ROW","AFTER_STATEMENT","INSTEAD_OF_ROW","FIRE_ONCE","APPLY_SERVER_ONLY" "AO_589059_RULE_STAT_ID_autoinc","BEFORE EACH ROW","INSERT","ATLASSIAN","TABLE","AO_589059_RULE_STAT",,"REFERENCING NEW AS NEW OLD AS OLD",,"ENABLED","""AO_589059_RULE_STAT_ID_autoinc"" BEFORE INSERT ON ""AO_589059_RULE_STAT"" FOR EACH ROW ","PL/SQL ","BEGIN SELECT ""AO_589059_RULE_STAT_ID_SEQ"".NEXTVAL INTO :NEW.""ID"" FROM DUAL; ","NO","NO","NO","NO","NO","NO","YES","NO"

    • このクエリで行が返されない場合は、このナレッジ ベース記事に該当しているため、「原因」セクションと「解決策」セクションに進んでください。

原因

AO_589059_RULE_STAT テーブルの Oracle DB トリガーがないため、Jira アプリケーションがこのテーブルに新しい行を挿入できず、SQL 例外が発生します。Jira ログには「エラー メッセージ = ORA-01400: ("ATLASSIAN"."AO_589059_RULE_STAT"."ID") に NULL を挿入できません」が記録されます。

通常、このトリガーは、Automation for Jira を使用して新しく Jira をインストールした場合は既定で存在するはずです。しかし、トリガーが Oracle DB で誤って手動で削除された可能性があります。これは Jira の制御外です。

ソリューション

このエラーを修正するには、次の手順に従って、Oracle DB で見つからないトリガーを手動で再作成する必要があります。

  • Jira アプリケーションがデータベースへの接続に使用するのと同じユーザーで Oracle DB にログインし、次の SQL クエリを実行します。

  • 次のコマンドを実行して、見つからないトリガーを再作成します。

1 2 3 4 5 6 create or replace TRIGGER "AO_589059_RULE_STAT_ID_autoinc" BEFORE INSERT ON "AO_589059_RULE_STAT" FOR EACH ROW BEGIN SELECT "AO_589059_RULE_STAT_ID_SEQ".NEXTVAL INTO :NEW."ID" FROM DUAL; END;
  • 次の SQL クエリを実行して、何らかの結果が得られることを確認します。

1 select * from user_triggers where "TRIGGER_NAME" = 'AO_589059_RULE_STAT_ID_autoinc';
  • 再度いくつかの自動化ルールをトリガーしてみて、正常に完了することをご確認ください

更新日時: 2024年05月31日)

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。