My question is basically the same as here , but I am not satisfied with the answer, so I am writing this question.
The Spring Framework manual states that for PROPAGATION_REQUIRES_NEW the current transaction will be paused. How is this implemented? I know that most databases do not support nested transactions and can only have one transaction running on the same connection. This means that you cannot simply "not use" the original transaction and start a new one - before you start a new one, you must complete or cancel the original transaction.
Example:
START TRANSACTION SELECT ... UPDATE ...
Or is this possible using another connection (Session object)? So that we stop using the original connection and create a new one, where can we start a new transaction?
I miss here so obvious that no one wants to explain it (at least not in Spring docs, Spring in Action, Spring persistence with Hibernate).
Thanks a lot!
source share