[jira] Created: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

[jira] Created: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
provide a synchronous dispatch to the stream based resequencer for easier transaction support
---------------------------------------------------------------------------------------------

                 Key: CAMEL-126
                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
             Project: Apache Camel
          Issue Type: Improvement
          Components: camel-core
            Reporter: James Strachan


Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.

e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do

* consume messages
* reorder
* send them on to another destination
* jms session.commit()

As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_40042 ]

Martin Krasser commented on CAMEL-126:
--------------------------------------

Right. Also, we have turn off delivery of messages from the internal timer thread. Hope, I have a patch ready within the next days ...

I guess jms session.commit() gets implicitly called when setting the JMSConfiguration.transacted property to true (during JMSComponent setup), right?


> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser updated CAMEL-126:
---------------------------------

    Attachment: camel-core.patch

Attached is a patch for synchronous delivery of messages. Messages are now consumed from an endpoint and sent to the next processor by a single thread. Further unit tests are included as well.


> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>         Attachments: camel-core.patch
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser updated CAMEL-126:
---------------------------------

    Attachment: resequencer-docu.txt

Attached is some documentation (Wiki markup) about the stream-processing resequencer.

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>         Attachments: camel-core.patch, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_40289 ]

James Strachan commented on CAMEL-126:
--------------------------------------

Sorry this issue fell through the cracks. I tried applying the patch and got compile errors in the StreamResequencer; not yet sure its that trunk has moved on since the patch was created or if its an IDEA bug applying the patch...



> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>         Attachments: camel-core.patch, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser updated CAMEL-126:
---------------------------------

    Attachment: camel-core.patch-update

I could not reproduce the compile errors when using Eclipse for applying the patch. There was only a minor conflict within the javadocs. However, I re-created a patch for the latest trunk (attachment: camel-core.patch-update) to remove these minor conflicts. Also, the path names in the patch are now relative to the camel-core module.


> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>         Attachments: camel-core.patch, camel-core.patch-update, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser updated CAMEL-126:
---------------------------------

    Attachment: camel-core.patch-update-2.zip

James,

can you please try again to apply the patch (camel-core.patch-update-2.zip). I re-created the patch from today's trunk.

I also tested to apply the patch locally and found that there are unmatched regions in StreamResequencer.java. Therefore, I included a local copy of StreamResequencer.java file as well. Copying the file over the old version of StreamResequencer.java in addition to applying the patch should work.

Thanks in advance,
Martin



> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Assigned: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Gert Vanthienen reassigned CAMEL-126:
-------------------------------------

    Assignee: Gert Vanthienen

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Resolved: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Gert Vanthienen resolved CAMEL-126.
-----------------------------------

    Resolution: Fixed

Martin,

Thanks for your patch!  It has been committed in http://svn.eu.apache.org/viewvc?view=rev&revision=697732.
I did need to make some minor changes to get it working again, so feel free to reopen this issue and attach a new patch to correct the things I messed up in the process ;)

Regards,

Gert

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Reopened: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser reopened CAMEL-126:
----------------------------------


Gert,

thanks for applying the patch. I re-opened this issue because of a thread-safety problem introduced with the latest changes: {{StreamResequencer.process(Exchange)}} used the non-thread-safe {{ResequencerEngine}}. I changed this method to be empty (this consistent with {{BatchProcessor.process(Exchange)}}) so that exchanges are only polled from an endpoint and synchronously sent to a destination/processor using a single polling thread. The corresponding patch is {{camel-core.patch-update-3}}.

(A multi-threaded {{Processor}}-based implementation has been discussed in [http://www.nabble.com/forum/ViewPost.jtp?post=19344150&framed=y&skin=22882]. Not sure yet when I can provide an additional patch for that but as soon as I have one I'll open another related JIRA issue for it).

With {{camel-core.patch-update-3}} I also added support for a more fluent resequencer configuration. For example instead of writing {{from(...).resequencer(...).stream(new StreamResequencerConfig(5000, 4000L))}} you can now alternatively write {{from(...).resequencer(...).stream().capacity(5000).timeout(4000L)}}. I'll update the documentation in the Camel Wiki as soon as the patch is applied.

Regards,
Martin

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser updated CAMEL-126:
---------------------------------

    Attachment: camel-core.patch-update-3

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46043#action_46043 ]

Claus Ibsen commented on CAMEL-126:
-----------------------------------

Martin,

Thanks for the patch. I have applied it.

Please open a new ticket for the missing multi thread processor, otherwise we forget about it

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Resolved: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Martin Krasser resolved CAMEL-126.
----------------------------------

    Resolution: Fixed

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46213#action_46213 ]

Claus Ibsen commented on CAMEL-126:
-----------------------------------

Martin, I think the Config object could be a shared object for all kind that uses the BatchProcessor
- resequencer
- aggregator

So we should consider having a shared config object for this in Camel 2.0. But I like it. Then its possible to have Java DSL and use Spring XML for dynamic values, where they are easier to spot and change.

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CAMEL-126) provide a synchronous dispatch to the stream based resequencer for easier transaction support

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/activemq/browse/CAMEL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46227#action_46227 ]

Martin Krasser commented on CAMEL-126:
--------------------------------------

Claus, I'll address that when I work on https://issues.apache.org/activemq/browse/CAMEL-949.

> provide a synchronous dispatch to the stream based resequencer for easier transaction support
> ---------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-126
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-126
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: James Strachan
>            Assignee: Gert Vanthienen
>             Fix For: 1.5.0
>
>         Attachments: camel-core.patch, camel-core.patch-update, camel-core.patch-update-2.zip, camel-core.patch-update-3, resequencer-docu.txt
>
>
> Currently the ResequencerEngine uses a Queue for asynchronous delivery of the messages. We might want to provide a Processor instead; so we could if we prefer use synchronous dispatch.
> e.g. to be able to use a single thread and JMS transaction on a single JMS session (to avoid XA etc) to do
> * consume messages
> * reorder
> * send them on to another destination
> * jms session.commit()
> As far as I understand it, the current async mechanism will make transactional re-sequencing harder right?

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.