5.0.2 A->B->C,如果B应用执行时间超过1秒,就直接异常了。如何修改这个最大等待时间?
- Langage dominant
- Java
- Étoiles
- 4.2k
- Forks
- 1.4k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
根据官方文档下载的LCN demo正常执行没问题,但是一旦 A->B->C ,比如说B自己业务执行时间超过了1秒(用Thead.sleep(3000L)模拟,就会报错
TxManagerException: attempts to join the non-existent transaction group.
怀疑是TC的最大等待时间是1秒,阅读了源码发现也确实如此。因此想把tm-rpc-timeout 调大一点,
看了官方文档,TC中加tx-lcn.client.tm-rpc-timeout= 就可以,但是加了之后报错,发现 TxClientConfig 中的属性是私有的,所以请求应该如果调大这个参数呢?
ps:我也设法在TM中调参数,可是发现TM中是固定写死了1秒,也没办法解决。
还是说是我下载的版本环境问题?大家有遇到过用分布式锁事务的时候,当业务执行时间较长时的解决方案
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Reproduire la démo LCN 5.0.2 avec un appel A→B→C et Thread.sleep(3000L), puis examiner TxClientConfig et le traitement de tm-rpc-timeout par TC/TM. Déterminer pourquoi le paramètre documenté est rejeté ou ignoré et vérifier qu’un délai d’expiration plus long empêche l’exception de groupe de transactions inexistant.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- distributed-systems
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100