Freigeben über


Probleme mit Mainframes, die sich auf die Wiederherstellung von Transaktionen auswirken

In einigen Situationen kann TI keine neuen Transaktionen mit einer Remoteumgebung verarbeiten. Dies kann das richtige Verhalten sein. Wenn beispielsweise die TI-Ausnahme 1227 an eine Clientanwendung zurückgegeben oder bei einem Ereignis protokolliert wird und das HRESULT 8004D110 lautet, bedeutet dies, dass neue Transaktionen mit dieser Remoteumgebung nicht akzeptiert werden können, da frühere Transaktionen nach einem Kommunikationsfehler nicht aufgelöst wurden.

Wenn der zweistufige Commitvorgang nicht abgeschlossen ist, muss CICS die Transaktion im In-Doubt Zustand halten, bis die Kommunikation erneut eingerichtet wird. Anschließend führt TI Wiederherstellungsprotokolle aus, um sicherzustellen, dass sich die Transaktion auf allen Knoten im gleichen Zustand befindet. CICS muss ordnungsgemäß konfiguriert werden, damit dies erfolgt.

Wenn CICS unerwartet beendet wird und dann in einem kalten Zustand neu gestartet wird, gibt es keinen Speicher in seinem Protokoll aller Transaktionen, die nicht abgeschlossen wurden. Daher können diese Transaktionen nicht automatisch in einen konsistenten Zustand wiederhergestellt werden. Vergewissern Sie sich, dass alle Transaktionen abgeschlossen wurden, bevor Sie CICS beenden, oder konfigurieren Sie CICS für einen warmen Neustart mit demselben Protokoll, damit alle ausstehenden Transaktionen wiederhergestellt werden können.

CICS Transaction Server ermöglicht es dem Administrator, eine Wartezeit in den In-Doubt Attributen einer Transaktion anzugeben. Achten Sie darauf, einen Wert anzugeben, der ausreichend ist, um die Neugründung der Kommunikation in den meisten Fällen zu ermöglichen. Wenn dieses Timeout verstrichen ist, bevor alle im In-Doubt-Zustand verbleibenden Transaktionen wiederhergestellt wurden, trifft CICS eine heuristische Entscheidung, um sie lokal zu klären. Wenn diese Entscheidung mit der Entscheidung für die Transaktionen durch Microsoft DTC (Distributed Transaction Coordinator) in Konflikt steht, können neue Transaktionen erst gestartet werden, wenn das Ergebnis der vorherigen Transaktionen manuell überschrieben wurde.

In CICS-Versionen vor CICS Transaction Server gibt es keine Wartezeit in den Wiederherstellungsattributen. Das Zuweisen des Wait-Werts zum In-Doubt-Attribut führt nicht dazu, dass CICS die Transaktion in den von TI angeforderten Zustand versetzt, wenn die Wiederherstellung versucht wird. Wenn Sie diese Versionen von CICS verwenden, legen Sie das attribut In-Doubt auf "Backout" oder "Commit" fest. Wenn eine daraus resultierende heuristische Entscheidung falsch ist und verhindert, dass neue Transaktionen beginnen, überschreiben Sie das Ergebnis der Transaktion mithilfe von DTC.

Überprüfen Sie das Windows-Ereignisprotokoll auf Nachrichten aus dem SNA LU 6.2 Resync TP-Dienst, der angibt, dass Transaktionen nicht erfolgreich wiederhergestellt wurden. Folgen Sie den vorgeschlagenen Aktionen. Verwenden Sie das Transaktionslistenfenster von Microsoft Transaction Server, um ausstehende Transaktionen anzuzeigen. Klicken Sie mit der rechten Maustaste auf die Transaktion, um deren Eigenschaften anzuzeigen. Stellen Sie sicher, dass der Zustand von CICS mit der heuristischen Konfiguration übereinstimmt, oder versetzen Sie es in den gesicherten oder abgebrochenen Zustand, falls CICS unerwartet beendet wurde und nach einem Kaltstart. Das Ereignis im Protokoll identifiziert die Transaktion und den von CICS ausgewählten Zustand.

Hinweis

Dies gilt nicht für TCP/IP, da TCP/IP keine ACID-Transaktionen (atomisch, konsistent, isoliert und dauerhaft) unterstützt.

Siehe auch

Manuelles Auflösen von Transaktionen