Issue Summary
In Jira 9.x, the WebHooks queue size and the number of consumers were configurable.
However, since Jira 10.0.0, these configurations have changed to hardcoded values, with the queue size set to a non-customizable limit of 250 and 5 consumers.
This change results in webhook events being discarded when the queued tasks exceed this limit, with no workaround available, representing a regression from previous versions.
Steps to Reproduce
- Configure some 10 WebHooks to listen to all the events available and do not "Exclude body"
- Setup a JMeter or other request automation to simulate Issue updates, transitions and comment creations.
Expected Results
Jira should allow for the customization of the WebHooks queue size and the number of consumers to handle events as in previous Jira versions. This would allow busier instances to process webhooks without dropping them.
Actual Results
WebHooks queue size and the number of consumers are hardcoded to 250 and 5 respectively.
The below exception is thrown in the atlassian-jira.log file and webhook events are not processed.
2025-03-17 10:20:32,856+0000 JiraTaskExecutionThread-93 ERROR user [c.a.event.internal.AsynchronousAbleEventDispatcher] There was an exception thrown trying to dispatch event [com.atlassian.jira.event.issue.IssueEvent@53f06a8a[issue=kanban-145,comment=<null>,worklog=<null>,changelog=[GenericEntity:ChangeGroup][issue,112345][author,User][created,2025-03-17 11:20:32.704][id,556466],eventTypeId=2,sendMail=false,params={eventsource=action, baseurl=https://jira.test.com},subtasksUpdated=true,spanningOperation=Optional.empty]] from the invoker [com.atlassian.event.internal.ComparableListenerInvoker@daad2a] java.lang.RuntimeException: Task com.atlassian.webhooks.internal.DefaultWebhookService$$Lambda$11221/0x00007f6699b97b98@33b3e06d rejected from java.util.concurrent.ThreadPoolExecutor@6401247d[Running, pool size = 5, active threads = 5, queued tasks = 250, completed tasks = 2000]. Listener: com.atlassian.jira.plugins.webhooks.spi.JiraWebhookEventPublisher event: com.atlassian.jira.event.issue.IssueEvent at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:53) at com.atlassian.diagnostics.internal.platform.monitor.event.EventSystemMonitor.invokeMonitored(EventSystemMonitor.java:105)
Workaround
Fixed in 10.3.5 Please note that the steps to tune the webhook performance parameters in Jira 10 have changed. For instructions, please consult Tuning webhook performance parameters in Jira Data Center.
- is related to
-
JRASERVER-74492 Enabling asynchronous WebHooks may result in the Web-Hook-Events-Processor queue overflowing with too many UserAttributeStoredEvent and other WebHooks not being triggered as a result
-
- Closed
-
- causes
-
ACE-7593 Loading...
- mentioned in
-
Page Loading...
-
Page Loading...
-
Page Loading...
-
Page Loading...
-
Page Loading...
-
Page Loading...
-
Page Loading...
-
Page Loading...