users@jms-spec.java.net

[jms-spec users] Re: JMS_SPEC-134: Declarative Annotation Based JMS Listeners

From: Chris Barrow <chris.barrow_at_kaazing.com>
Date: Thu, 27 Aug 2015 08:18:32 -0700
Hi Clebert,

"DupsOK is ok, but that doesn't guarantee the semantic these users have."

Sounds intriguing. Could you explain a bit more, maybe give a concrete use case?

Chris

On 8/27/2015 8:11 AM, Clebert Suconic wrote:

On Thu, Aug 27, 2015 at 10:37 AM, Nigel Deakin <nigel.deakin@oracle.com> wrote:
Hi Clebert,

We should definitely discuss how the JMS 2.0 proposals proposals for batch delivery (since deferred) might work with the new-style MDBs and listener beans.

As you know, MDB users can turn off XA transactions using the @TransactionManagement annotation, and can remove the number of network round-trips using an acknowledgement mode of DUPS_OK. Why is this not sufficient?

Because users want to have the messages and their Database operations in transaction.  
I have seen this pattern since my days of consultant.

This goes beyond my JBoss. I'm not concerned about any specific usecase from JBoss, but from what I see from users doing on day by day with their messaging systems.

DupsOK is ok, but that doesn't guarantee the semantic these users have.


Or do you have a specific need to have XA transactions that cover multiple messages?


From what I see, EE users will want to have async messages, but will need transactions.. the easiest way to do XA Transactions between JMS and Databases are through EE... for that reason, users are *over-using* MDBs... and XA transaction

And that's limiting any improvements done by any messaging provider. 

A few handful users will write standalone application to batch things properly... 


So, I think we really should propose a way to batch things through MDBs. At least these users would take full advantage of asynchronous message systems and still do transactions.