Verhalten der Messaging-Engine bei vollem Dateispeicher auswählen
Sie können angeben, welche Aktion eine Messaging-Engine ausführen soll, wenn ein Dateispeicher voll ist und die Anwendungen versuchen, weitere Nachrichten zu senden. Sie können festlegen, ob Anwendungsthreads warten sollen, bis der Prüfpunkt abgeschlossen ist, oder sofort eine Ausnahme auslösen sollen.
Informationen zu diesem Vorgang
Wenn ein Dateispeicher voll ist, setzt die Messaging-Engine einen Prüfpunkt der Protokolldatei, um alle Nachrichten, die seit dem letzten Prüfpunkt gesendet und empfangen wurden, auszugleichen. Dieser Prozess kann einige Zeit dauern. Wenn zwischen dem Zeitpunkt, zu dem der Dateispeicher voll ist, und dem Zeitpunkt, zu dem der Prüfpunkt abgeschlossen ist, Anwendungen versuchen, eine Nachricht zu senden, löst die Messaging-Engine die Ausnahmebedingung ObjectStoreFullException aus und setzt die Nachricht CWSOM1042E ab.
Wenn ein Anwendungsthread, der eine Nachricht sendet, feststellt, dass die Datei voll ist, fordert er einen Prüfpunkt an. Standardmäßig setzt der Anwendungsthread unverzüglich die Ausnahme ObjectStoreFullException an die Anwendung ab. Sie können als Alternativverhalten auswählen, dass der Anwendungsthread die Ausnahme nicht auslöst, sondern wartet, bis der Prüfpunkt abgeschlossen ist. Wenn der Prüfpunkt Speicherplatz im Dateispeicher freimachen kann, fährt der Anwendungsthread fort und sendet die Nachrichten, bevor er Daten zurückgibt. Wenn der Datenspeicher nach dem Prüfpunkt immer noch voll ist, setzt der Anwendungsthread die Ausnahme an die Anwendung ab.
Wählen Sie aus, dass Anwendungsthreads warten sollen, wenn Ihre Anwendungen alle Nachrichen im Dateispeicher löschen. In dem Fall ist den Anwendungen bekannt, dass der Dateispeicher nicht mehr voll ist. Die Anwendungen müssen zwar warten, bis der Prüfpunkt abgeschlossen ist, empfangen jedoch während der Ausführung des Prüfpunkts keine Ausnahmen und müssen auch keine Sendevorgänge wiederholen.
Wenn Sie das Verhalten bei vollem Dateispeicher ändern möchten, gehen Sie in der Administrationskonsole wie folgt vor, um den Wert der Eigenschaft sib.msgstore.storeFullWaitForCheckPoint zu setzen:
Vorgehensweise
- Klicken Sie im Navigationsfenster auf .
- Geben Sie den Namen der Eigenschaft ein (sib.msgstore.storeFullWaitForCheckPoint).
- Geben Sie den Wert true ein, wenn die Anwendung erst nach Abschluss des Prüfpunkts zurückkehren soll. Der Standardwert false bewirkt, dass Anwendungsthreads sofort nach Abfragen des Prüfpunkts die Ausnahme ObjectStoreFullException auslösen.
- Klicken Sie auf OK.
- Speichern Sie Ihre Änderungen in der Masterkonfiguration.