You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2022/09/02 11:19:00 UTC

[jira] [Resolved] (CAMEL-12927) SQS: Optionally wait for transaction complete to send messages in SqsProducer

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

Claus Ibsen resolved CAMEL-12927.
---------------------------------
    Resolution: Won't Fix

> 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
>             Fix For: Future
>
>
> 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
(v8.20.10#820010)