Uploaded image for project: 'JBoss ESB'
  1. JBoss ESB
  2. JBESB-3550

Aggregator doesn't work with XA transaction rollback

    XMLWordPrintable

    Details

    • Steps to Reproduce:
      Hide

      Enable transactions, create Aggregated service which requires two messages and throw RuntimeException after the aggregator.

      Show
      Enable transactions, create Aggregated service which requires two messages and throw RuntimeException after the aggregator.

      Description

      If Aggregator's service fails, it will rollback one instance of the message, and thus in the following round when reading the messages from queue, it will never finish as it expects several messages.

      Patched Aggregator with printing out the MessageId (for better logs):

      2010-12-20 15:06:17,162 INFO [STDOUT] (Thread-12 (group:HornetQ-client-global-threads-320732754)) Received message: 7c7b6080-485c-4f6e-9f40-8c49f676cb76
      2010-12-20 15:06:17,984 INFO [STDOUT] (Thread-3 (group:HornetQ-client-global-threads-320732754)) Received message: 7c7b6080-485c-4f6e-9f40-8c49f676cb76
      2010-12-20 15:06:18,305 ERROR [org.hornetq.ra.inflow.HornetQMessageHandler] (Thread-3 (group:HornetQ-client-global-threads-320732754)) Failed to deliver message
      java.lang.RuntimeException:
      2010-12-20 15:06:18,356 INFO [STDOUT] (Thread-12 (group:HornetQ-client-global-threads-320732754)) Received message: 7c7b6080-485c-4f6e-9f40-8c49f676cb76

      So not everything is rolled back to the original queue and thus when Aggregator waits for the other message, it will fail.

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            burmanm Michael Burman (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated: