You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since we have two cases in Spring Data already where transactions are supported with reactive drivers - namely for MongoDB and R2DBC -, let's revisit our core transaction management abstraction and our @Transactional support for reactive scenarios.
The transaction interceptor could automatically detect reactive scenarios through a Publisher return type from the method it is supposed to proxy and automatically go through a reactive transaction management SPI in that case. Such an SPI has been prototyped for MongoDB and R2DBC already, so it's mostly a matter of rolling it into Spring Framework proper.
Configuration-wise, the existing transaction configuration elements would largely still apply, just pointing to a reactive transaction manager implementation instead of a classic PlatformTransactionManager.
The text was updated successfully, but these errors were encountered:
I've baked this into TransactionAspectSupport directly, as inner classes that are conditionally used when a Publisher-based method is discovered. A transaction manager can now be configured as a TransactionManager marker interface, automatically cast to PlatformTransactionManager or ReactiveTransactionManager as needed.
We are trying to upgrade to spring-boot 2.2/Spring 5.2. We are using the reactive WebClient in combination with plain JDBC (we are using Aurora MySQL). This means we have reactor on the classpath. After upgrading we receive the following error: java.lang.IllegalStateException: Specified transaction manager is not a ReactiveTransactionManager. What is the path we need to follow to upgrade in the case where @transactional is used and reactive streams is on the classpath? Or should I create a bug ticket?
Since we have two cases in Spring Data already where transactions are supported with reactive drivers - namely for MongoDB and R2DBC -, let's revisit our core transaction management abstraction and our
@Transactional
support for reactive scenarios.The transaction interceptor could automatically detect reactive scenarios through a
Publisher
return type from the method it is supposed to proxy and automatically go through a reactive transaction management SPI in that case. Such an SPI has been prototyped for MongoDB and R2DBC already, so it's mostly a matter of rolling it into Spring Framework proper.Configuration-wise, the existing transaction configuration elements would largely still apply, just pointing to a reactive transaction manager implementation instead of a classic
PlatformTransactionManager
.The text was updated successfully, but these errors were encountered: