Почему Spring Data r2dbc не обнаруживает диспетчер транзакций по типу возвращаемого метода при использовании аннотации @Transactional?

#spring-transactions #spring-data-r2dbc

Вопрос:

В моем проекте нам нужно использовать 2 менеджера транзакций(для JPA и R2DBC), оба они инициализированы автоматической настройкой(два компонента с именами TransactionManager и connectionFactoryTransactionManager), в документации(ссылка) говорится, что:

Методы, возвращающие реактивный тип, такие как Publisher или поток Котлина (или их подтип), подходят для управления реактивными транзакциями.

Но на самом деле это не так, весна завершается с сообщением об исключении: No qualifying bean of type 'org.springframework.transaction.TransactionManager' available: expected single matching bean but found 2: transactionManager,connectionFactoryTransactionManager

Когда я проанализировал код, основная логика, определяющая, какой менеджер транзакций использовать, находится в TransactionAspectSupport.determineTransactionManager

но, к сожалению, эта логика не обнаруживает диспетчер вызовов методами, возвращающими тип, как указано в документации. Ну, в качестве обходного пути я могу выбрать, какой менеджер tx явно использовать в аннотации «@Транзакционный». Эта логика(автоматическое определение того, какой диспетчер tx использовать в зависимости от возвращаемого значения метода) еще не реализована, или я делаю что-то не так?