"Error rendering macro 'jirachart'" on Confluence pages
Platform Notice: Data Center - This article applies to Atlassian products on the Data Center platform.
Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles for non-Data Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
The Confluence pages fail to load and produce an "Error rendering macro 'jirachart'" message for Jira charts.
Environment
Confluence Data Center
Diagnosis
When accessing Confluence pages that include Jira charts, you may encounter the "Error rendering macro 'jirachart'" message. Reviewing the Confluence application logs(atlassian-confluence.log) will indicate the following exceptions.
2024-05-08 09:40:45,660 ERROR [http-nio-8090-exec-7] [xhtml.view.macro.ViewMacroMarshaller] handleMacroExecutionException Error rendering macro: jirachart
-- page: 18185 | referer: https://confluence.xyz.com/ | traceId: 33db7a17151aa722 | userName: abcd | action: viewpage | url: /display/xyzpage
java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@a4411d[Not completed, task = com.atlassian.sal.core.executor.ThreadLocalDelegateCallable@3f7129dd] rejected from java.util.concurrent.ThreadPoolExecutor@6a12dc9e[Running, pool size = 4, active threads = 4, queued tasks = 1000, completed tasks = 53122]
at java.base/java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.reject(Unknown Source)
Cause
The default `jira.executor.threadpool.size` is set to 4. The Confluence instance heavily using Jira charts, there is a risk of exhausting this thread pool. When the pool is depleted, Confluence will start displaying the "Error rendering macro 'jirachart'" message when accessing pages with Jira charts.
Solution
To resolve this issue, you can follow below steps to increase the pool size.
- Shutdown Confluence.
- Take backup of <confluence_installer>/bin/setenv.sh file.
Edit the <confluence_installer>/bin/setenv.sh file and append the below line :
CATALINA_OPTS="-Djira.executor.threadpool.size=10 ${CATALINA_OPTS}"
Note : Make sure the parameter is added above export CATALINA_OPTS in <confluence_installer>/bin/setenv.sh file.
- Start Confluence.
- Make sure to make the above changes on all the nodes in the cluster.