Uploaded image for project: 'Dev - Nexus Repo'
  1. Dev - Nexus Repo
  2. NEXUS-34334

ProcessClusterEventTimeoutException: failed to process cluster event (delete-index [....]) within 30s

    Details

    • Type: Bug
    • Status: New
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 3.40.1
    • Fix Version/s: None
    • Component/s: Scheduled Tasks, Search
    • Labels:
    • Notability:
      2

      Description

      SYMPTOM:

      Rebuilding entire search indexes failed with below ERROR and the task completed, so that the remaining repositories did not look like rebuilt.

      2022-07-22 18:44:02,480-0500 INFO  [quartz-15-thread-8]  *SYSTEM org.sonatype.nexus.repository.content.search.SearchFacetImpl - Rebuilding index of repository <repository name>
      2022-07-22 18:44:32,491-0500 ERROR [quartz-15-thread-8]  *SYSTEM org.sonatype.nexus.repository.search.index.RebuildIndexTask - Failed to run task 'Rebuilding search index of *' on repository '<repository name>'
      org.elasticsearch.cluster.metadata.ProcessClusterEventTimeoutException: failed to process cluster event (delete-index [9b1ebab31......850676]) within 30s
              at org.elasticsearch.cluster.service.InternalClusterService$2$1.run(InternalClusterService.java:361)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      

      EXPECTATION:

      • The ideal solution would be making this 30s timeout configurable (but Nexus can't start with Elasticsearch web API, probably not doable?)
      • When the task was rebuilding with "All Repositories", if rebuilding one repository failed, it should not stop the entire task but should continue with the next repository
      • If implementing above skip for all possible exceptions are not doable, then the task UI should allow Nexus admin to select multiple repositories, so that admin does not need to retry with "All Repositories" (and may fail again)
      • Nexus admin should be able to know which repository failed without checking the task log (some UI feedback in the task page is nice).

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            hosako Hajime Osako
            Last Updated By:
            Rich Seddon Rich Seddon
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Date of First Response:

                tigCommentSecurity.panel-title