Compartir a través de


Problemas del sistema central que afectan a la recuperación de transacciones

En algunas situaciones, TI no puede procesar nuevas transacciones con un entorno remoto. Esto puede ser un comportamiento correcto. Por ejemplo, si se devuelve la excepción 1227 de TI a una aplicación cliente o se registra en un evento, y HRESULT es 8004D110, indica que no se pueden aceptar nuevas transacciones con este entorno remoto porque las transacciones anteriores no se resolvieron después de un error de comunicaciones.

Cuando el proceso de confirmación en dos fases no se completa, CICS debe contener la transacción en el estado In-Doubt hasta que se vuelvan a establecer las comunicaciones. A continuación, TI realizará protocolos de recuperación para asegurarse de que la transacción está en el mismo estado en todos los nodos. CICS debe configurarse correctamente para que esto ocurra.

Si CICS finaliza inesperadamente y, a continuación, se reinicia en un estado inactivo, no hay memoria en su registro de ninguna transacción que no se haya completado. Por lo tanto, estas transacciones no se pueden recuperar automáticamente en un estado coherente. Compruebe que todas las transacciones se hayan completado antes de detener CICS o configure CICS para un reinicio intermedio mediante el mismo registro para que se puedan recuperar las transacciones pendientes.

El servidor de transacciones CICS permite al administrador especificar un tiempo de espera en los atributos de In-Doubt de una transacción. Asegúrese de especificar un valor adecuado para permitir que las comunicaciones se vuelvan a establecer en la mayoría de los casos. Si este tiempo de espera transcurre antes de que todas las transacciones queden en el estado In-Doubt se hayan recuperado, CICS tomará una decisión heurística para resolverlas localmente. Si esta decisión entra en conflicto con la decisión tomada para las transacciones realizadas por Microsoft DTC (Coordinador de transacciones distribuidas), las nuevas transacciones no se pueden iniciar hasta que el resultado de las transacciones anteriores se hayan invalidado manualmente.

En las versiones de CICS anteriores al servidor de transacciones cics, no hay tiempo de espera en los atributos de recuperación. La asignación del valor Wait al atributo In-Doubt no hace que CICS coloque la transacción en el estado solicitado por TI cuando se intente la recuperación. Si usa estas versiones de CICS, establezca el atributo In-Doubt en Backout o Commit. Si una decisión heurística resultante es incorrecta e impide que se inicien nuevas transacciones, invalide el resultado de la transacción mediante DTC.

Examine el registro de eventos de Windows para ver los mensajes del servicio TP de resincronización de SNA LU 6.2 que indica que las transacciones no se recuperaron correctamente. Siga las acciones sugeridas. Use la ventana Lista de transacciones del servidor de transacciones de Microsoft para mostrar transacciones pendientes. Haga clic con el botón derecho en la transacción para mostrar sus propiedades. Resolverlo para aceptar el estado de que CICS se configuró para seleccionar heurísticamente, o para el estado de copia de seguridad o anulado si CICS terminó inesperadamente e inició el frío. El evento del registro identifica la transacción y el estado elegido por CICS.

Nota

Esto no se aplica a TCP/IP porque TCP/IP no admite transacciones ACID (atómicas, coherentes, aisladas y duraderas).

Consulte también

Cómo resolver transacciones manualmente