By design, ReactiveTransactionManager
uses javadoc @throws
clauses for indicating the exceptions that it propagates through the reactive pipeline returned from its methods. Unfortunately it also inherited Java method signature throws TransactionException
declarations from PlatformTransactionManager
which do not add anything to the signature here since TransactionException
is a RuntimeException
, and those declarations actually do not give a correct indication since the ReactiveTransactionManager
methods are not expected to actually throw that exception type in a traditional sense. As a consequence, we'll drop those throws
declarations from the method signature but keep the javadoc @throws
indications around, in the ReactiveTransactionManager
interface as well as the AbstractReactiveTransactionManager
base class.
Also, along the lines of #30802, R2dbcTransactionManager
actually propagates R2dbcException
(a DataAccessException
subclass) from commit
/rollback
which we should support in the ReactiveTransactionManager
javadoc as well.