Parameterize the amount of Threads for webhook processing

XMLWordPrintable

    • Type: Suggestion
    • Resolution: Unresolved
    • None
    • Component/s: Webhooks
    • 3
    • 10

      The scenario

      Currently (as of Jira 7.13.13 and 8.8.0), Jira only works with a Thread pool of 3 Threads for webhook processing:

      com.atlassian.webhooks.plugin.WebHookPublisherImpl
          public WebHookPublisherImpl(WebHookListenerAccessVoter accessVoter, WebHookListenerProvider listenerProvider,
                  PublishTaskFactory publishTaskFactory, EventPublisher eventPublisher, LegacyModuleDescriptorWebHookListenerRegistryImpl legacyListeners)
          {
              this(accessVoter, listenerProvider, publishTaskFactory, eventPublisher, legacyListeners,
                      new ThreadPoolExecutor(3, 3, 0L, TimeUnit.MILLISECONDS,
                          new LinkedBlockingQueue<Runnable>(PUBLISH_QUEUE_SIZE),
                          new ThreadFactoryBuilder().setNameFormat("Web-Hook-Publisher-%d").setDaemon(true).build()),
                      true);
          }
      

      The source code's hardcoded with a 3 Thread pool size.

      The ask

      We ask that web hooks Thread pool size be parameterize in some way, through jira-config.properties, for example. Default could remain 3.

      Related issue

      If we have JRASERVER-39361 implemented with logs around each webhook processing, we could assertively determine if the Thread pool for web hooks should be increased or not.

       

      Cheers

            Assignee:
            Unassigned
            Reporter:
            Rodrigo Martinez
            Votes:
            9 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: