¿Qué significa el código HRESULT 0x0004D010 (XACT_S_LASTRESOURCEMANAGER)?

 
Anterior Siguiente
XACT_S_LOCALLY_OK CO_S_NOTALLINTERFACES

XACT_S_LASTRESOURCEMANAGER

Qué significa XACT_S_LASTRESOURCEMANAGER

XACT_S_LASTRESOURCEMANAGER corresponde al HRESULT 0x0004D010. Windows lo describe así: «El administrador de recursos solicitó actuar como coordinador de la transacción, es decir, como último administrador de recursos.».

La constante describe una condición concreta de inscripción de resource managers y correspondencia entre UOW, enlistment y recurso; aquí el resource manager solicita actuar como último recurso/coordinador, una optimización que cambia el orden y responsabilidad del commit.

Qué comprobar

  • Captura UOW, RMID, identificador de enlistment, resource manager, flags de single-phase y la llamada exacta de enlist/re-enlist en el intento que devuelve 0x0004D010.
  • Verifica la precondición inmediatamente anterior a la llamada: enlistment, prepare, commit, abort, re-enlist o recovery requieren estados distintos.
  • Comprueba de forma explícita esta condición: el resource manager solicita actuar como último recurso/coordinador, una optimización que cambia el orden y responsabilidad del commit.

Tratamiento y recuperación

Corrige la relación entre la transacción y el resource manager que participa en ella. Reutiliza solo el enlistment y el UOW que pertenecen a esa generación; al reintentar, crea una inscripción nueva si la anterior ya quedó resuelta o invalidada.

Diferencias con resultados cercanos

Repite el escenario con correlación completa y confirma que la transición que originaba el código ya no aparece; no basta con que el caller deje de mostrar el HRESULT.

Referencias técnicas


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