I have just a quick checkup question to start with: should Java service loaders work as expected or have you changed something that may have an impact on this feature?
We experience a kind of feature drop-out since Jira & JSM 11.2.0 continuing in 11.3 EAP.
It causes a blocker issue in our app compatibility, as we load custom (non-JavaMail-based) email service providers via the Java service loader mechanism (Java SPI).
We define our custom providers by means of the two files below in a Maven Java project (following the Java specification):
javamail.providers (located in resources/META-INF dir)
jakarta.mail.Provider (located in resources/META-INF/services dir)
In Jira 11.1, this setup still worked, now something must have gone wrong. We’re still investigating…
We guess that the Optimize your instance with safeguards feature may have something to do with this, however, we could not find any proof in official documentation.
Apart from that, we’d had to overcome Java class loading issues already with the introduction of Jira 11 (while using the Jakarta-based JavaMail package), but now the phenomenon seems to penetrated into Java SPI, too. Maybe we’re doing something in the wrong manner, but we’d like to know whether there were changes corresponding to this topic.
I believe that you don’t need to use both the service loader and javamail.providers, you can choose one mechanism.
My guess, without seeing your code, is that something is wrong with your jakarta.mail.Provider definition. Everything worked due to the bug in mail-api, which meant that it was not read at all. But after the bugfix, it is now read correctly and causes problems.
I’d try deleting that file completely and checking what happens (but again, I don’t see your code, and everything I know about Java emails I learned today ).
Please let me know if this helped with the issue you are experiencing.