codingapi / codingapi/tx-lcn

[5.0.2] LCN TM 通知 TC 失败导致数据不一致

Ouverte
#567 17 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
4.2k
Forks
1.4k
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### 1. Bug Description

我的业务是 A,B,C三个服务,A 服务作为业务入口,依次调用 B,C 两个服务。

USER -> A
A -> B
A -> C

当TM 通知 B 或者 C commit 的前,如果这两个服务宕机,此时 A 服务并没有捕获到异常。这会导致 USER 已为接口调用成功了。

我不确定是我的用法有问题,还是目前就存在这样的问题。我理解此时用该有一定的重试机制,并且重试失败后此全局事务应该处于挂起状态,并抛出异常给业务。

### 2. Environment:
- JDK version: 1.8
- OS: macOS
- TX-LCN version: 5.0.2

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par reproduire le flux de transaction A-to-B/C décrit dans l’issue avec TX-LCN 5.0.2, JDK 8 et l’environnement indiqué. Suivez la manière dont le TM gère un participant indisponible avant la notification de commit et vérifiez si la réponse de succès observée correspond au comportement documenté du framework. Le travail est considéré comme terminé lorsque le résultat de l’échec, le comportement de retry ou de suspension et l’exception exposée au métier sont couverts par un résultat vérifié.

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é
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.