远程事务没有回滚
- Langage dominant
- Java
- Étoiles
- 4.2k
- Forks
- 1.4k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
大神,请教一个问题,先调用远程事务,远程事务正确,再调用本地事务,本地事务报错,能回滚,远程事务不回滚,怎么处理?
本地事务代码如下:
@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
}
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par les points d’entrée `save` et `saveUser` présentés dans l’issue, en vous concentrant sur leurs annotations `@LcnTransaction`, `@TccTransaction` et `@Transactional`. Reproduisez l’appel distant suivi de l’exception locale `1/0`, puis consultez la documentation ou les tests concernant la propagation des transactions et le rollback ; la tâche est terminée lorsque le comportement de rollback attendu et la configuration sont clairement établis.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- backend, distributed-systems
- Type d'issue
- Bug
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 15/100