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

Seeing concurrent modification exceptions from the user history manager in SAC logs

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Medium
    • None
    • 4.0
    • JQL

    Description

      Looking through the SAC logs I came across this:

      pkamal 20385x3975x6 6nk92j https://support.atlassian.com/rest/api/1.0/issues/picker [bc.issue.search.AbstractIssuePickerSearchProvider] Error while executing search request
      java.util.ConcurrentModificationException
              at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
              at java.util.AbstractList$Itr.next(AbstractList.java:343)
              at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010)
              at com.atlassian.jira.user.DefaultUserIssueHistoryManager.getViewableIssueHistory(DefaultUserIssueHistoryManager.java:133)
              at com.atlassian.jira.user.DefaultUserIssueHistoryManager.getFullIssueHistoryWithPermissionChecks(DefaultUserIssueHistoryManager.java:74)
              at com.atlassian.jira.plugin.jql.function.IssueHistoryFunction.getValues(IssueHistoryFunction.java:46)
              at com.atlassian.jira.jql.operand.FunctionOperandHandler.getValues(FunctionOperandHandler.java:35)
              at com.atlassian.jira.jql.operand.FunctionOperandHandler.getValues(FunctionOperandHandler.java:19)
              at com.atlassian.jira.jql.operand.DefaultJqlOperandResolver.getValues(DefaultJqlOperandResolver.java:83)
              at com.atlassian.jira.jql.query.IssueIdClauseQueryFactory.getQuery(IssueIdClauseQueryFactory.java:65)
              at com.atlassian.jira.jql.query.QueryVisitor.visit(QueryVisitor.java:147)
              at com.atlassian.jira.jql.query.QueryVisitor.visit(QueryVisitor.java:23)
              at com.atlassian.query.clause.TerminalClauseImpl.accept(TerminalClauseImpl.java:137)
              at com.atlassian.jira.jql.query.QueryVisitor.createQuery(QueryVisitor.java:64)
              at com.atlassian.jira.jql.query.DefaultLuceneQueryBuilder.createLuceneQuery(DefaultLuceneQueryBuilder.java:34)
              at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.getHits(LuceneSearchProvider.java:151)
              at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:238)
              at com.atlassian.jira.issue.search.providers.LuceneSearchProvider.search(LuceneSearchProvider.java:80)
              at com.atlassian.jira.bc.issue.search.AbstractIssuePickerSearchProvider.getResults(AbstractIssuePickerSearchProvider.java:85)
              at com.atlassian.jira.bc.issue.search.DefaultIssuePickerSearchService.getResults(DefaultIssuePickerSearchService.java:61)
              at sun.reflect.GeneratedMethodAccessor612.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at com.atlassian.plugin.osgi.hostcomponents.impl.DefaultComponentRegistrar$ContextClassLoaderSettingInvocationHandler.invoke(DefaultComponentRegistrar.java:129)
      

      A quick inspection of the code does not show any obvious f**k ups, it looks like we are passing out copies of the map, but we need to dig into it.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              dylan@atlassian.com Dylan Etkin [Atlassian]
              Votes:
              5 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: