JetBrains / JetBrains/Exposed

Specified transaction manager is not a ReactiveTransactionManager

Open
#661 3 comments 0 reactions 0 assignees View on GitHub
bug enhancement
Dominant language
Kotlin
Stars
9.3k
Forks
798
Avg merge
4d 2h
Merged PRs (30d)
26

Description

I use
- spring-boot-starter-parent 2.2.0.RELEASE
- java 12
- kotlin 1.3.50
- exposed-spring-boot-starter 0.17.6

Get this error when moving from spring-boot-starter-parent 2.1.9.RELEASE to 2.2.0.RELEASE.

I get this error when calling a method in a @Service class and is annotated with @Async and @Transactional

For some reason Spring determines that it should use a ReactiveTransactionManager but I do not use any reactive features like Mono, Flux, Flow. And no dependency to reactor in maven, etc.

```
java.lang.IllegalStateException: Specified transaction manager is not a ReactiveTransactionManager: org.jetbrains.exposed.spring.SpringTransactionManager@4053cfd5
at org.springframework.transaction.interceptor.TransactionAspectSupport$ReactiveTransactionSupport.asReactiveTransactionManager(TransactionAspectSupport.java:957)
at org.springframework.transaction.interceptor.TransactionAspectSupport$ReactiveTransactionSupport.determineTransactionManager(TransactionAspectSupport.java:929)
at org.springframework.transaction.interceptor.TransactionAspectSupport$ReactiveTransactionSupport.invokeWithinTransaction(TransactionAspectSupport.java:848)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:335)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:99)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
at org.springframework.aop.interceptor.AsyncExecutionInterceptor.lambda$invoke$0(AsyncExecutionInterceptor.java:115)
at org.springframework.aop.interceptor.AsyncExecutionAspectSupport.lambda$doSubmit$3(AsyncExecutionAspectSupport.java:276)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run$$$capture(CompletableFuture.java:1771)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java)
at com.stey.finance.rerent.config.async.AsyncConfiguration$addMetadataInTaskExecutor$1$1$1.run(AsyncConfiguration.kt:30)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:835)

```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.