事务超时,发起方服务没有清理事务(clean transaction)的过程
- Langage dominant
- Java
- Étoiles
- 4.2k
- Forks
- 1.4k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
- I have searched the [issues](https://github.com/codingapi/tx-lcn/issues) of this repository and believe that this is not a duplicate.
### 1. Bug Description
(不知道是不是bug,先请谅解)
服务A、B,A发起事务调用B。
测试A服务和B服务超时后事务的控制过程(通过断点实现,模拟业务处理时间过长造成整体事务超时),发现发起方A服务的事务没有清理(clean transaction)的过程,导致A服务锁表。参与方B服务有clean transaction的过程。
如下是参与方设置断点导致整体事务超时的事务过程:

如下是发起方设置断点导致整体事务超时的事务过程:

### 2. Environment:
- JDK version: 1.8
- OS: win7
- TX-LCN version: 5.0.1
- Others: Oracle 数据库
### 3. Exception Stacktrace
```
Paste your Exception Stacktrace here!
```
### 4. Tour Idea
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par reproduire le flux de timeout entre les services A et B à l’aide du délai basé sur des breakpoints décrit, puis comparez les séquences de nettoyage de la transaction de l’initiateur et du participant présentées dans les captures d’écran. Suivez la raison pour laquelle l’initiateur conserve sa transaction et verrouille la table ; le travail est terminé lorsque l’initiateur effectue le nettoyage après l’expiration du timeout de la transaction globale, sans laisser le verrou derrière lui.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- databases, distributed-systems
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100