¿Qué significa el código HRESULT 0x0004D007 (XACT_S_ALLNORETAIN)?

 
Anterior Siguiente
XACT_S_MADECHANGESINFORM XACT_S_ABORTING

XACT_S_ALLNORETAIN

Qué significa XACT_S_ALLNORETAIN

XACT_S_ALLNORETAIN corresponde al HRESULT 0x0004D007. Windows lo describe así: «La transacción se anuló correctamente, pero la anulación no conservó el estado.».

Este resultado delimita el problema en opciones de la transacción: aislamiento, retención, asincronía y límites soportados. En particular, el abort terminó, pero ningún estado quedó retenido para continuar bajo retaining semantics.

Qué comprobar

  • Captura nivel de aislamiento, isoFlags, retaining flags, timeout, modo síncrono/asíncrono y capacidades anunciadas por el transaction manager en el intento que devuelve 0x0004D007.
  • Ordena la traza por UOW y tiempo y separa el primer cambio de estado de los errores secundarios generados al cerrar o recuperar la transacción.
  • Comprueba de forma explícita esta condición: el abort terminó, pero ningún estado quedó retenido para continuar bajo retaining semantics.

Tratamiento y recuperación

Ajusta la llamada a las capacidades reales del transaction manager y del recurso. No ocultes un flag no soportado sustituyéndolo silenciosamente: registra la semántica elegida y valida que aislamiento, timeout y retaining cumplen el contrato de la aplicación.

Diferencias con resultados cercanos

Después del cambio, confirma que coordinator y resource managers coinciden en la misma decisión y que no quedan ramas prepared/in-doubt pendientes de recovery.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.