¿Qué significa el código de error de Windows 6729 (ERROR_TRANSACTION_MUST_WRITETHROUGH)?

 
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.