Globale Arbeitseinheiten beenden
Der Warteschlangenmanager kann für das Beenden globaler Arbeitseinheiten nach einem vorkonfigurierten Inaktivitätsintervall konfiguriert werden.
- AMQ_TRANSACTION_EXPIRY_RESCAN = < Rescan-Intervall in Millisekunden >
- AMQ_XA_TRANSACTION_EXPIRY = < Zeitlimitintervall in Millisekunden >
Dies betrifft also nur Transaktionen, die in keinem Anwendungsthread zugeordnet sind und für die der externe Transaktionsmanager noch keinen xa_prepare-Funktionsaufruf ausgegeben hat.
Externe Transaktionsmanager bewahren ausschließlich Protokolle von Transaktionen auf, die vorbereitet, festgeschrieben oder rückgängig gemacht wurden. Wenn der externe Transaktionsmanager aus irgendeinem Grund beendet wird, bringt er nach seiner Rückkehr vorbereitete, festgeschriebene und rückgängig gemachte Transaktionen zum Abschluss; aktive, noch nicht vorbereitete Transaktionen verwaisen jedoch. Legen Sie AMQ_XA_TRANSACTION_EXPIRY unter Berücksichtigung des erwarteten Intervalls zwischen der Durchführung von transaktionsorientierten MQI-API-Aufrufen durch eine Anwendung und dem Abschluss der Transaktion nach Durchführung transaktionsorientierter Arbeitsvorgänge auf anderen Ressourcenmanagern fest, um dies zu vermeiden.
Um eine rechtzeitige Bereinigung nach Ablauf von AMQ_XA_TRANSACTION_EXPIRY zu gewährleisten, muss AMQ_TRANSACTION_EXPIRY_RESCAN auf einen niedrigeren Wert als das Intervall AMQ_XA_TRANSACTION_EXPIRY gesetzt werden, idealerweise so, dass der Neuscan mehrmals während des Intervalls AMQ_XA_TRANSACTION_EXPIRY erfolgt.