[
https://issues.apache.org/jira/browse/CAMEL-12927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712413#comment-16712413
]
Claus Ibsen commented on CAMEL-12927:
-------------------------------------
That code above uses Spring TX, do AWS client really use Spring TX or was that
some code you added on your own?
> SQS: Optionally wait for transaction complete to send messages in SqsProducer
> -----------------------------------------------------------------------------
>
> Key: CAMEL-12927
> URL: https://issues.apache.org/jira/browse/CAMEL-12927
> Project: Camel
> Issue Type: Improvement
> Components: camel-aws
> Affects Versions: 2.22.1
> Reporter: Craig
> Priority: Major
>
> Currently, SQS sends messages immediately not waiting for the transaction to
> commit. Since SQS doesn't support transactional message sending, this
> behavior is as expected. However, Camel could emulate transaction support for
> SQS by waiting for the current transaction to commit before sending the
> message. This would make SQS behave more in line with JMS.
> In SqsConfiguration, add one new property:
> * transacted
> When transactioned=false (default), behavior is as it is today.
> When transaction=true, don't send the message until the transaction
> completes. In SqsProducer, wrap the call to
> {code:java}
> SendMessageResult result = getClient().sendMessage(request);{code}
> like so:
> {code:java}
>
> org.springframework.transaction.support.TransactionSynchronizationManager.registerSynchronization(new
> org.springframework.transaction.support.TransactionSynchronizationAdapter() {
> @Override
> public void afterCommit() {
> SendMessageResult result = getClient().sendMessage(request);
> }
>
> });{code}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)