You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by GitBox <gi...@apache.org> on 2020/10/14 10:29:05 UTC

[GitHub] [camel-quarkus] jamesnetherton opened a new issue #1918: Revisit transaction support

jamesnetherton opened a new issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918


   There are a few extensions that offer transaction support:
   
   * JDBC
   * JPA
   * JMS
   * SQL
   
   We don't have any documentation around how these can integrate with `quarkus-narayana`. We could improve the UX by automatically configuring the transaction support for these components if `quarkus-narayana` or our JTA extension is detected.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] zhfeng commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
zhfeng commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-774383521


   The JMS does not work in the XA transaction as the quarkus artemis extension has not the capability of transaction manager integration. So the JMS will not enlist in a transaction and will not revert the changes if we throw an exception to trigger the rollb back.
   
   I raise https://github.com/quarkusio/quarkus/issues/14871 to add this capability in the quarkus artemis extension.
   
   JDBC works fine because the agroal extension already has the transaction mananger integration. We just need to set the datasource transaction type to ***XA***.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] jamesnetherton closed issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
jamesnetherton closed issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] zhfeng commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
zhfeng commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-782035392


   @jamesnetherton can you take a review of the PR ?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] jamesnetherton commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
jamesnetherton commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729509081


   Ok, if that really is all that's required, then its fine.
   
   What I meant with regards to testing, is that we don't verify that the TX stuff actually works in any of the component itests. E.g does the work done by an SQL or JPA route actually get rolled back etc. No doubt it does, but we should verify this stuff IMO.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] jamesnetherton commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
jamesnetherton commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729488671


   Correct me if I'm wrong, but the underlying transaction support for all of those components comes from `spring-tx`. So if you want JTA support, then you need to set up a `JtaTransactionManager`. That's what I was thinking could be done automatically. I.e there would be a bean either in the registry or registered with Arc and it gets wired into the component(s).


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] jamesnetherton commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
jamesnetherton commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729489510


   The other aspect is that we have limited (maybe even no) test coverage for TX support. It'd be nice to improve that.
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] zhfeng commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
zhfeng commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729503787


   Well, the JtaTransactionManger is injected by our camel-jta extension see [TransactionalJtaTransactionPolicy](https://github.com/apache/camel-quarkus/blob/master/extensions/jta/runtime/src/main/java/org/apache/camel/quarkus/component/jta/TransactionalJtaTransactionPolicy.java#L41). Also we register the policy beans in [JtaProcessor](https://github.com/apache/camel-quarkus/blob/master/extensions/jta/deployment/src/main/java/org/apache/camel/quarkus/component/jta/deployment/JtaProcessor.java#L47).
   
   The jta integration tests are used for testing these polices see [JtaRoutes](https://github.com/apache/camel-quarkus/blob/master/integration-tests/jta/src/main/java/org/apache/camel/quarkus/component/jta/it/JtaRoutes.java). So I think if the customer include the
   ```
   <dependency>
       <groupId>org.apache.camel.quarkus</groupId>
       <artifactId>camel-quarkus-jta</artifactId>
   </dependency>
   ```
   they can get the ```transacted()``` working in the routers. 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] zhfeng commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
zhfeng commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729528635


   Sure, please assign it to me and I will take a close look to add more itests.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [camel-quarkus] zhfeng commented on issue #1918: Revisit transaction support

Posted by GitBox <gi...@apache.org>.
zhfeng commented on issue #1918:
URL: https://github.com/apache/camel-quarkus/issues/1918#issuecomment-729334974


   I'm not very clear how to do the transacion support for these componens automatically ?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org