远程事务没有回滚
- Lenguaje dominante
- Java
- Estrellas
- 4.2k
- Forks
- 1.4k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
大神,请教一个问题,先调用远程事务,远程事务正确,再调用本地事务,本地事务报错,能回滚,远程事务不回滚,怎么处理?
本地事务代码如下:
@LcnTransaction(propagation = DTXPropagation.REQUIRED)
@Transactional//事务注解
public ReturnMap save(HttpServletRequest request, HttpServletResponse response,TeacherAttrBean teacherAttrBean){
JSONObject jsonObject = JSONObject.fromObject(sysFegin.saveUserInfo(teacherAttrBean));
System.out.println(1/0); // 抛出异常
}
// 远程事务
@TccTransaction(propagation = DTXPropagation.SUPPORTS)
@Transactional
public ReturnMap saveUser(HttpServletRequest request, HttpServletResponse response,UserBean userBean) {
// 插入数据库 代码省略
return ok
}
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza con los puntos de entrada `save` y `saveUser` mostrados en el issue, centrándote en sus anotaciones `@LcnTransaction`, `@TccTransaction` y `@Transactional`. Reproduce la llamada remota seguida de la excepción local `1/0` y, después, revisa la documentación o las pruebas sobre la propagación de transacciones y el rollback; se considera terminado cuando el comportamiento de rollback esperado y la configuración estén claramente establecidos.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- backend, distributed-systems
- Tipo de issue
- Error
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 15/100