Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-71397

DefaultIssueIndexer warning when re-indexing empty issue list

    XMLWordPrintable

Details

    Description

      Issue Summary

      Frequent warnings are being logged when DefaultIssueIndexer is provided with an empty list of issues to reindex.

      DevStatus plugin calls DefaultIssueIndexer when there are no issues to replicate, causing a high number or WARN messages.
      This extra logging started after the upgrade to Jira 8.10.0 from Jira 7.6.6.

      The messages are triggered under two different conditions:

       

      1) From DevStatus ServiceRunner:

      2020-07-21 03:19:11,819+0000 devstatus.applink:thread-4 WARN ServiceRunner     [c.a.j.issue.index.DefaultIssueIndexer] No issues to replicate: numberOfCommentsToReplicate: 0, numberOfWorklogsToReplicate: 0, issueIndexingParams: {indexIssues=true, indexChangeHistory=true, indexComments=false, indexWorklogs=false, forceReloadFromDatabase=true}
      java.lang.Throwable
      	at com.atlassian.jira.issue.index.DefaultIssueIndexer$IssuesOperation.close(DefaultIssueIndexer.java:837)
      	at com.atlassian.jira.issue.index.DefaultIssueIndexer.perform(DefaultIssueIndexer.java:442)
      	at com.atlassian.jira.issue.index.DefaultIssueIndexer.reindexIssues(DefaultIssueIndexer.java:259)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.lambda$reIndexIssues$5(DefaultIndexManager.java:618)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.executeWithIndexLock(DefaultIndexManager.java:825)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:618)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:597)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:454)
      	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssueObjects(DefaultIndexManager.java:480)
      [...]	at com.atlassian.jira.config.component.SwitchingInvocationHandler.invoke(SwitchingInvocationHandler.java:38)
      [...] com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:26)
      [...]	at com.sun.proxy.$Proxy3485.reIndexIssueObjects(Unknown Source)
      	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.doReIndex(DevSummaryStore.java:112)
      	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.lambda$reIndex$0(DevSummaryStore.java:104)
      	at com.atlassian.jira.util.thread.JiraThreadLocalUtils.lambda$wrap$1(JiraThreadLocalUtils.java:156)
      	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.reIndex(DevSummaryStore.java:104)
      	at com.atlassian.jira.plugin.devstatus.provider.source.cache.CachingProviderDecorator$StoreValueInCache.apply(CachingProviderDecorator.java:336)
      	at com.atlassian.jira.plugin.devstatus.provider.source.cache.CachingProviderDecorator.lambda$fetchSummaryData$1(CachingProviderDecorator.java:231)
      [...]
      

       

      2) When a user is editing an issue ISSUE-34744

      • Multiple warnings (at the use case, 271 warnings during 22 minutes) for the User request to  /browse/ISSUE-34744: 
        2020-07-20 11:23:15,338+0000 devstatus.applink:thread-2 WARN xxxxx 1215x1076x2 yyyyy 999.99.999.9,888.88.888.0 /browse/ISSUE-34744 [c.a.j.issue.index.DefaultIssueIndexer] No issues to replicate: numberOfCommentsToReplicate: 0, numberOfWorklogsToReplicate: 0, issueIndexingParams: {indexIssues=true, indexChangeHistory=true, indexComments=false, indexWorklogs=false, forceReloadFromDatabase=true}
        java.lang.Throwable
        	at com.atlassian.jira.issue.index.DefaultIssueIndexer$IssuesOperation.close(DefaultIssueIndexer.java:837)
        	at com.atlassian.jira.issue.index.DefaultIssueIndexer.perform(DefaultIssueIndexer.java:442)
        	at com.atlassian.jira.issue.index.DefaultIssueIndexer.reindexIssues(DefaultIssueIndexer.java:259)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.lambda$reIndexIssues$5(DefaultIndexManager.java:618)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.executeWithIndexLock(DefaultIndexManager.java:825)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:618)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:597)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssues(DefaultIndexManager.java:454)
        	at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexIssueObjects(DefaultIndexManager.java:480)
        [...]	at com.atlassian.jira.config.component.SwitchingInvocationHandler.invoke(SwitchingInvocationHandler.java:38)
        [...]	at com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:26)
        [...]	at com.sun.proxy.$Proxy3488.reIndexIssueObjects(Unknown Source)
        	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.doReIndex(DevSummaryStore.java:112)
        	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.lambda$reIndex$0(DevSummaryStore.java:104)
        	at com.atlassian.jira.util.thread.JiraThreadLocalUtils.lambda$wrap$1(JiraThreadLocalUtils.java:156)
        	at com.atlassian.jira.plugin.devstatus.provider.source.cache.DevSummaryStore.reIndex(DevSummaryStore.java:104)
        	at com.atlassian.jira.plugin.devstatus.provider.source.cache.CachingProviderDecorator$StoreValueInCache.apply(CachingProviderDecorator.java:336)
        	at com.atlassian.jira.plugin.devstatus.provider.source.cache.CachingProviderDecorator.lambda$fetchSummaryData$1(CachingProviderDecorator.java:231)
        [...] com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.afterRanInterruptibly(TrustedListenableFutureTask.java:131)
        [...]
        

       

      Steps to Reproduce

      DoS team was able to reproduce this issue by programmatically providing an empty list to DefaultIssueIndexer.

      Expected Results

      No additional logging

      Actual Results

      High number of warning messages being logged:

      2020-07-21 03:19:11,819+0000 devstatus.applink:thread-4 WARN ServiceRunner [c.a.j.issue.index.DefaultIssueIndexer] No issues to replicate: numberOfCommentsToReplicate: 0, numberOfWorklogsToReplicate: 0, issueIndexingParams: {indexIssues=true, indexChangeHistory=true, indexComments=false, indexWorklogs=false, forceReloadFromDatabase=true} java.lang.Throwable

      Workaround

      • Modify the log4j.properties file:
      • Change the log level to ERROR:
        log4j.logger.com.atlassian.jira.issue.index.DefaultIssueIndexer = ERROR, filelog
        log4j.com.atlassian.jira.issue.index.DefaultIssueIndexer = false
        

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              imurakami@atlassian.com Murakami
              Votes:
              4 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: