Jira のインデックス作成や課題の複製で "Indexing Completed with 1 errors" が返される

お困りですか?

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

コミュニティに質問

問題

症状 1

  • 特定の課題を複製しようとすると、Jira で "Exception: com.atlassian.jira.index.IndexingFailureException: Indexing completed with 1 errors" エラーが返される。ただし、課題の複製は正常に完了している。
  • 対象の課題の [履歴] タブに多数のアクションが表示され、期待される日時ではなく [たった今] と記録される。
  • atlassian-jira.log に次の出力が記録される。

    2015-03-03 09:48:31,927 http-bio-7615-exec-18 WARN sysadmin 588x145x1 1yymjr3 127.0.0.1 /secure/CloneIssueDetails.jspa [atlassian.jira.index.AccumulatingResultBuilder] Indexing failed for Issue - '213918'
    2015-03-03 09:48:31,927 http-bio-7615-exec-18 WARN sysadmin 588x145x1 1yymjr3 127.0.0.1 /secure/CloneIssueDetails.jspa [atlassian.jira.index.AccumulatingResultBuilder] com.atlassian.jira.util.dbc.Assertions$NullArgumentException: parameter should not be null!
    java.lang.RuntimeException: com.atlassian.jira.util.dbc.Assertions$NullArgumentException: parameter should not be null!
    	at com.atlassian.jira.index.DefaultIndex$Failure.<init>(DefaultIndex.java:123)
    	at com.atlassian.jira.issue.index.DefaultIssueIndexer$2.perform(DefaultIssueIndexer.java:208)
    	at com.atlassian.jira.issue.index.DefaultIssueIndexer$4$1.get(DefaultIssueIndexer.java:337)
    	at com.atlassian.jira.issue.index.DefaultIssueIndexer$4$1.get(DefaultIssueIndexer.java:333)
    	at com.atlassian.jira.index.SimpleIndexingStrategy.get(SimpleIndexingStrategy.java:9)
    	at com.atlassian.jira.index.SimpleIndexingStrategy.get(SimpleIndexingStrategy.java:5)
    ...
     
    Caused by: com.atlassian.jira.util.dbc.Assertions$NullArgumentException: parameter should not be null!
    	at com.atlassian.jira.util.dbc.Assertions.notNull(Assertions.java:38)
    	at com.atlassian.jira.issue.changehistory.ChangeHistoryItem$Builder.on(ChangeHistoryItem.java:440)
    	at com.atlassian.jira.issue.changehistory.DefaultChangeHistoryManager.getAllChangeItems(DefaultChangeHistoryManager.java:204)
    	at com.atlassian.jira.issue.index.DefaultChangeHistoryRetriever.apply(DefaultChangeHistoryRetriever.java:44)



症状 2

  • Jira の再インデックスで IndexingFailureException が返される。

atlassian-jira.log に次の出力が記録される。

2015-02-19 19:37:30,778 JiraTaskExectionThread-1 WARN sysadmin 1048x628x1 pkp67f 127.0.0.1 /secure/admin/IndexReIndex.jspa [atlassian.jira.index.AccumulatingResultBuilder] com.atlassian.jira.util.dbc.Assertions$NullArgumentException: parameter should not be null!
2015-02-19 19:38:31,244 JiraTaskExectionThread-1 ERROR sysadmin 1048x628x1 pkp67f 127.0.0.1 /secure/admin/IndexReIndex.jspa [jira.util.index.CompositeIndexLifecycleManager] Reindex All FAILED.  Indexer: DefaultIndexManager: paths: [/opt/jira/jira_home/caches/indexes/comments, /opt/jira/jira_home/caches/indexes/issues, /opt/jira/jira_home/caches/indexes/changes]
com.atlassian.jira.index.IndexingFailureException: Indexing completed with 99 errors
	at com.atlassian.jira.index.AccumulatingResultBuilder$CompositeResult.await(AccumulatingResultBuilder.java:192)
	at com.atlassian.jira.issue.index.DefaultIndexManager.doIndexIssuesInBatchMode(DefaultIndexManager.java:1021)
	at com.atlassian.jira.issue.index.DefaultIndexManager.doStopTheWorldReindex(DefaultIndexManager.java:988)
	at com.atlassian.jira.issue.index.DefaultIndexManager.access$300(DefaultIndexManager.java:92)

...
 
 

原因

changegroup テーブルに空の CREATED 列が存在する。

診断ステップ

症状 1: 次の SQL クエリがエントリを返す場合、インスタンスはこの問題の影響を受けています。

  • SQL クエリを実行し、次のコマンドがエントリを返すかどうかを確認
select * from changegroup where CREATED is null and issueid in (select id from jiraissue where issuenum=ISSUENUM and project in (select id from project where pkey='PKEY'));

(info) ISSUENUM と PKEY をプロジェクトの課題キーとプロジェクト キーで置き換えます。上述のログに記録されている "Issue ~ '213918'" は jiraissue テーブルの課題 ID に対応しています。

症状 2: 次の SQL クエリがエントリを返す場合、インスタンスはこの問題の影響を受けています。

select distinct issueid from changegroup where CREATED is null;


ソリューションまたは回避策

  • データベースをバックアップし、問題が発生した場合に変更をロールバックできるようにします。

  • Jira を停止します。
  • データベースを手動で更新します。changegroup テーブルを手動で更新して履歴に対応する任意の日時を設定します。例:

update changegroup set CREATED='2015-01-01 00:00:00'  where CREATED is null;
  • データベースの変更後、 Jira を再起動します。
  • 必要に応じて Jira の再インデックスを行います。

最終更新日 2019 年 8 月 14 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.