| Anterior | Siguiente |
| ERROR_RM_CANNOT_BE_FROZEN_FOR_SNAPSHOT | ERROR_TRANSACTION_NO_SUPERIOR |
ERROR_TRANSACTION_MUST_WRITETHROUGH
Lectura del código ERROR_TRANSACTION_MUST_WRITETHROUGH
ERROR_TRANSACTION_MUST_WRITETHROUGH (6729, 0x00001A49) — La transacción no puede registrarse con la EnlistmentMask especificada porque ya completó la fase PrePrepare. Para mantener la coherencia, ResourceManager debe cambiar al modo de escritura directa y dejar de almacenar datos en caché dentro de esta transacción. El registro solo para fases posteriores de la transacción aún puede completarse correctamente.
KTM coordina Transaction Manager, Resource Managers y enlistments. Antes de reintentar un side effect hay que conocer el outcome de la transacción y qué participantes ya procesaron prepare, commit o rollback.
Frontera que hay que demostrar
Para el valor decimal 6729, la condición observable es «La transacción no puede registrarse con la EnlistmentMask especificada porque ya completó la fase PrePrepare. Para mantener la coherencia, ResourceManager debe cambiar al modo de escritura directa y dejar de almacenar datos en caché dentro de esta transacción. El registro solo para fases posteriores de la transacción aún puede completarse correctamente».
Qué comprobar
- Conserva como etiqueta de correlación «transaction · must · writethrough» y la descripción exacta «La transacción no puede registrarse con la EnlistmentMask especificada porque ya completó la fase PrePrepare. Para mantener la coherencia, ResourceManager debe cambiar al modo de escritura directa y dejar de almacenar datos en caché dentro de esta transacción. El registro solo para fases posteriores de la transacción aún puede completarse correctamente»; así el ticket no se mezcla con otro código de la misma familia.
Diferencia con otro estado
ERROR_CRM_PROTOCOL_ALREADY_EXISTS (6710) describe «El administrador de recursos intentó registrar un protocolo que ya existe». El código actual describe «La transacción no puede registrarse con la EnlistmentMask especificada porque ya completó la fase PrePrepare. Para mantener la coherencia, ResourceManager debe cambiar al modo de escritura directa y dejar de almacenar datos en caché dentro de esta transacción. El registro solo para fases posteriores de la transacción aún puede completarse correctamente».
Cómo actuar
Validación práctica
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
