codingapi / codingapi/tx-lcn

当两个服务操作相同表的相同id数据时,会报错无法加入一个不存在的分布式事务

Abierto
#349 0 comentarios 1 reacción 0 asignados Ver en GitHub
Lenguaje dominante
Java
Estrellas
4.2k
Forks
1.4k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

- [ ] 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
1.服务A和服务B均操作相同表的同一条数据(必须是同一条数据,非常规操作),进行更新操作。
2.调用链为服务A->服务B,服务A注解为TXC,服务B为TXC,服务A为事务开始服务。
3.连续多次请求时,服务B固定报错attempts to join the non-existent transaction group,且group id相同。或产生 Error updating database. Cause: java.sql.SQLException: resource is locked! place try again later.异常。
4.此bug会引起数据一致性问题。

### 2. Environment:
- JDK version:1.8.1_181
- OS:windows
- TX-LCN version:5.0.2.RELEASE
- Others:null

### 3. Exception Stacktrace

```
Paste your Exception Stacktrace here!
```

### 4. Tour Idea

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

No se nombran archivos fuente, pruebas ni puntos de entrada, y no se proporciona ningún stack trace. Empieza reproduciendo el escenario repetido de actualización de service-A a service-B en TX-LCN 5.0.2.RELEASE; después, sigue el ciclo de vida del grupo de transacciones y el bloqueo de la base de datos alrededor de la fila compartida. Se considera terminado cuando las llamadas ya no se unen a un grupo inexistente ni fallan debido a un recurso bloqueado, mientras los datos siguen siendo consistentes.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
databases, distributed-systems
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.