現在、micronaut-data をトランザクションで動作させる際に問題が発生しています。
私の理解の範囲では、次の流れです。
- 取引開始
- 書き込み 1 を実行
- 例外をスローする
変更されていないデータベースを生成する必要があります。つまり、トランザクションをロールバックする必要があります。
micronaut-web start、単純なエンティティ、リポジトリ、および @Transactional、SynchronousTransactionManager などを使用してさまざまな試行を行うテストを使用して最小限の例を作成しましたが、すべての場合において、データベースの変更はトランザクション後に表示されます。最小限の例は、https ://github.com/Spellmaker/transactiontestgradle/ にあります。
テストクラスへの直接リンク: https://github.com/Spellmaker/transactiontestgradle/blob/master/src/test/kotlin/com/example/TransactiontestgradleTest.kt
明らかに、構成またはトランザクションの理解に何か問題があるに違いありません。それで、それはどれですか?