You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Clebert Suconic (Jira)" <ji...@apache.org> on 2022/03/22 18:58:00 UTC

[jira] [Closed] (ARTEMIS-2934) ARTEMIS-2226 causes excessive notificaions to be sent for Spring XA clients

     [ https://issues.apache.org/jira/browse/ARTEMIS-2934?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Clebert Suconic closed ARTEMIS-2934.
------------------------------------

> ARTEMIS-2226 causes excessive notificaions to be sent for Spring XA clients
> ---------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2934
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2934
>             Project: ActiveMQ Artemis
>          Issue Type: New Feature
>    Affects Versions: 2.20.0
>            Reporter: Anton Roskvist
>            Priority: Minor
>             Fix For: 2.21.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Hi,
> The fix in https://issues.apache.org/jira/browse/ARTEMIS-2226 causes excessive notifications to be sent for clients running XA transaction through the Spring framework.
> The notifications sent are SESSION_CREATED and SESSION_CLOSED.
> I strongly suspect this is because Spring DMLC cannot cache consumers properly when running XA, causing it to create and remove a new session for each message processed.
> Now I am not arguing that is not bad practice, because it is, but lots of applications run on top of this logic. I also suspect this might affect more but not be as pronounced.
>  
> I have been able to prove the aforementioned patch is what causes the issue by removing:
> sendSessionNotification(CoreNotificationType.SESSION_CREATED);
> and
> sendSessionNotification(CoreNotificationType.SESSION_CLOSED);
> from ServerSessionImpl.java (they where added in the patch)
> Now I do not fully understand the intent of the original patch but I think it should be made conditional, that is, send those notifications only for MQTT session or something similar.
>  
> In the environment I am testing this on the difference is huge as I have a lot of independent applications all running Spring+XA. About 40% of all messages getting sent and received are notifications.
>  
> Br,
> Anton



--
This message was sent by Atlassian Jira
(v8.20.1#820001)