Customer notification are not being delivered after upgrade to Jira Service Management 10
Platform Notice: Data Center Only - This article only applies to Atlassian apps on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs 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
After upgrading Jira Service Management Data Center to version 10.x, customer stop receiving the email notifications including request creation, comments, and resolution.
Environment
JSM Data Center version 10.0.0 and later
Java 17
Diagnosis
No errors are reported in the
atlassian-jira-outgoing-mail.logfile, even with the debug enabled.The
AO_4E8AE6_NOTIF_BATCH_QUEUEtable contains no entries that confirms the notifications are not being generated.
Cause
Jira Service Management 10.x uses Java 17 that enforces stricter internal reflection security. If the required JVM arguments --add-opens are missing from the startup configuration, background event handlers like onCommitEvent cannot access Java internal classes. This prevents the generation of specific customer notifications.
Following error is typically found in the atlassian-jira.log:
Jira notification Error
ERROR [c.a.s.internal.util.SafeRunner] Unable to run event handler onCommitEvent
com.google.gson.JsonIOException: Failed making field "java.time.Instant#seconds" accessible
...
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private final long java.time.Instant.seconds accessible: module java.base does not "opens java.time" to unnamed module
Solution
To resolve this issue, add the required Java 17 --add-opens arguments to the Jira JVM startup configuration. These arguments are listed in a reference file within the installation directory.
Step 1: Identify the required arguments
Navigate to the
<Jira-Install-Directory>/binfolder on your Jira server.Open the file
java-opens.txt.Copy all the
--add-opensparameters listed in this file.
Step 2: Apply arguments to the configuration
Depending on how you start Jira, apply the copied arguments to the appropriate configuration file.
For Linux (Standard installations):
Edit the
<Jira-Install-Directory>/bin/setenv.shfile.Locate the
JVM_SUPPORT_RECOMMENDED_ARGSvariable.Paste the arguments from
java-opens.txtinto this variable.Save the file and restart Jira.
For Linux (Systemd service):
If you run Jira as a systemd service, the
setenv.shfile might be bypassed.Edit your service configuration file, typically located at
/etc/systemd/system/jira.service.Locate the line starting with
Environment='CATALINA_OPTS=...'.Append the
--add-opensarguments to this line.Run
systemctl daemon-reloadto refresh the service configuration.Restart the Jira service.
For Windows(starting from .bat or as service) refer to the Setting properties and options on startup | Administering Jira applications Data Center 11.3 | Atlassian Documentation to update the JVM arguments
Step 3: Verify the configuration
Log in to Jira as a System Administrator.
Go to Administration > System > System info.
Locate the JVM Input Arguments section.
Confirm all the
--add-opensparameters you added are visible in this list.Create a new request in a Service Management project portal to verify notifications are working.
Was this helpful?