liuyangming edited a comment on issue #2854: modify the enlistment to support 
the transaction propagation REQUIRES_NEW
URL: 
https://github.com/apache/incubator-shardingsphere/pull/2854#issuecomment-521077760
 
 
   > I have understood the nested transaction issue.
   > but for XA TM implement (such as atomikos), they don't support enlist same 
resource multiple times in one XA transaction. you should make sure the 
modification runnable in our transaction-example at first.
   
   This scenario involves two XA transactions, not just one, but both XA 
transactions need to access the same resource. Since the transaction 
propagation level of the second transaction is REQUIRES_NEW, it requiures the 
TM performs the suspend/resume operation on the XAResource in the first 
transaction. 
   
   TM like Atomikos support suspend/resume operation, but currently 
mysql/postgresql as an RM does not supported (include join), some other 
databases such as oracle and db2 are supported, the database h2 used in my test 
case also supports too.
   
   The transaction-example provided by shardingsphere is not a typical usage of 
spring declarative transaction, so I created a my own sample project based on 
it, hope can help to reproduce this problem. 
   
   github: 
([https://github.com/liuyangming/shardingjdbc-sample](https://github.com/liuyangming/shardingjdbc-sample))

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to