sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo funciona la suspensión de transacciones en Spring?

El objetivo de suspender una transacción es cambiar la transacción actual de un hilo a una nueva. Esto NO se alinearía con la semántica de las transacciones anidadas porque las transacciones nuevas y suspendidas son completamente independientes entre sí. No hay una API de nivel de conexión que admita la suspensión de transacciones, por lo que esto debe hacerse utilizando una conexión diferente. Si está utilizando JTA con Spring, esto lo hace el administrador de transacciones JTA. Si está utilizando DataSourceTransactionManager, puede mirar el código y ver que guardará la conexión actual como un "recurso suspendido" y tomará una nueva conexión de la fuente de datos para la nueva transacción.