Site icon EfmSoft

¿Qué significa el código HRESULT 0x8004D008 (XACT_E_ISOLATIONLEVEL)?

 
Anterior Siguiente
XACT_E_HEURISTICDANGER XACT_E_NOASYNC

XACT_E_ISOLATIONLEVEL

Qué significa XACT_E_ISOLATIONLEVEL

XACT_E_ISOLATIONLEVEL corresponde al HRESULT 0x8004D008. Windows lo describe así: «El nivel de aislamiento solicitado no es válido o no es compatible.».

No debe reducirse a una “falla de MSDTC” genérica: pertenece a opciones de la transacción: aislamiento, retención, asincronía y límites soportados. La pista decisiva es que el nivel de aislamiento solicitado no es válido o no está implementado por el transaction manager/recurso.

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 0x8004D008.
  • Correlaciona eventos de aplicación, MSDTC y resource manager con la misma UOW para no mezclar transacciones concurrentes del mismo proceso.
  • Comprueba de forma explícita esta condición: el nivel de aislamiento solicitado no es válido o no está implementado por el transaction manager/recurso.

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.

Exit mobile version