NOTIFICATION_MASK
Listet die verschiedenen Arten von Benachrichtigungen auf, die von einer Registrierung empfangen werden können.
-
TRANSACTION_NOTIFY_MASK
-
-
0x3FFFFFFF
-
Eine Maske, die alle gültigen Bits für eine Transaktionsbenachrichtigung angibt.
-
-
TRANSACTION_NOTIFY_PREPREPARE
-
-
0x00000001
-
Diese Benachrichtigung wird aufgerufen, nachdem ein Client CommitTransaction aufgerufen hat und entweder kein Ressourcen-Manager (RM) den einstufigen Commit unterstützt, oder ein überlegener Transaktions-Manager (TM) ruft PrePrepareEnlistment auf. Diese Benachrichtigung wird von den RMs empfangen, die angibt, dass sie alle Arbeiten abschließen sollen, die dazu führen könnten, dass sich andere RMs in eine Transaktion eintragen müssen, z. B. das Leeren des Caches. Nach Abschluss dieser Vorgänge muss der RM PrePrepareComplete aufrufen. Um diese Benachrichtigung zu erhalten, muss der RM auch TRANSACTION_NOTIFY_PREPARE und TRANSACTION_NOTIFY_COMMIT unterstützen.
-
-
TRANSACTION_NOTIFY_PREPARE
-
-
0x00000002
-
Diese Benachrichtigung wird aufgerufen, nachdem die TRANSACTION_NOTIFY_PREPREPARE Verarbeitung abgeschlossen ist. Es signalisiert dem RM, alle Mitarbeit abzuschließen, die dieser Registrierung zugeordnet ist, sodass sichergestellt werden kann, dass ein Commitvorgang erfolgreich ist und auch ein Abbruchvorgang erfolgreich sein kann. In der Regel erfolgt der Großteil der Arbeit für eine Transaktion während der Vorbereitungsphase. Bei dauerhaften RMs muss ihr Zustand vor dem Aufruf der PrepareComplete-Funktion protokolliert werden. Dies ist die letzte Chance für den RM, ein Rollback für die Transaktion anzufordern.
-
-
TRANSACTION_NOTIFY_COMMIT
-
-
0x00000004
-
Diese Benachrichtigung signalisiert dem RM, alle Aufgaben abzuschließen, die dieser Registrierung zugeordnet sind. In der Regel gibt der RM alle Sperren frei und gibt alle Informationen frei, die für das Rollback der Transaktion erforderlich sind. Der RM muss reagieren, indem er die CommitComplete-Funktion aufruft , wenn er diese Vorgänge abgeschlossen hat.
-
-
TRANSACTION_NOTIFY_ROLLBACK
-
-
0x00000008
-
Diese Benachrichtigung signalisiert dem RM, alle der Transaktion zugeordneten Aufgaben rückgängig zu machen.
-
-
TRANSACTION_NOTIFY_PREPREPARE_COMPLETE
-
-
0x00000010
-
Diese Benachrichtigung signalisiert dem übergeordneten TM, dass ein Vorbereitungsvorgang erfolgreich abgeschlossen wurde.
-
-
TRANSACTION_NOTIFY_PREPARE_COMPLETE
-
-
0x00000020
-
Diese Benachrichtigung signalisiert dem übergeordneten TM, dass ein Vorbereitungsvorgang erfolgreich abgeschlossen wurde.
-
-
TRANSACTION_NOTIFY_COMMIT_COMPLETE
-
-
0x00000040
-
Diese Benachrichtigung signalisiert dem übergeordneten TM, dass ein Commitvorgang erfolgreich abgeschlossen wurde.
-
-
TRANSACTION_NOTIFY_ROLLBACK_COMPLETE
-
-
0x00000080
-
Diese Benachrichtigung signalisiert dem übergeordneten TM, dass ein Rollbackvorgang erfolgreich abgeschlossen wurde.
-
-
TRANSACTION_NOTIFY_RECOVER
-
-
0x00000100
-
Diese Benachrichtigung signalisiert RMs, dass sie ihren Zustand wiederherstellen sollten, da ein Transaktionsergebnis erneut zugestellt werden muss. Beispielsweise, wenn ein RM wiederhergestellt wird und Transaktionen im Zweifelsfall bestehen. Diese Benachrichtigung wird übermittelt, sobald der Zweifelszustand behoben ist.
-
-
TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT
-
-
0x00000200
-
Diese Benachrichtigung signalisiert dem RM, die Transaktion abzuschließen und zu committen, ohne ein zweistufiges Commitprotokoll zu verwenden. Wenn der RM einen zweiphasigen Vorgang verwenden möchte, muss er reagieren, indem die SinglePhaseReject-Funktion aufgerufen wird.
-
-
TRANSACTION_NOTIFY_DELEGATE_COMMIT
-
-
0x00000400
-
KTM signalisiert dem überlegenen TM, einen Commitvorgang auszuführen.
-
-
TRANSACTION_NOTIFY_RECOVER_QUERY
-
-
0x00000800
-
KTM signalisiert dem überlegenen TM, die status einer Zweifelstransaktion abzufragen.
-
-
TRANSACTION_NOTIFY_ENLIST_PREPREPARE
-
-
0x00001000
-
Diese Benachrichtigung signalisiert dem übergeordneten TM, dass vorbereite Benachrichtigungen für die angegebene Registrierung übermittelt werden müssen.
-
-
TRANSACTION_NOTIFY_LAST_RECOVER
-
-
0x00002000
-
Diese Benachrichtigung gibt an, dass der Wiederherstellungsvorgang für diesen RM abgeschlossen ist.
-
-
TRANSACTION_NOTIFY_INDOUBT
-
-
0x00004000
-
Die angegebene Transaktion befindet sich in einem zweifelsfreien Zustand. Der RM erhält diese Benachrichtigung bei Wiederherstellungsvorgängen, wenn eine Transaktion vorbereitet wurde, aber es ist kein überlegener Transaktions-Manager (TM) verfügbar. Wenn beispielsweise eine Transaktion eine Remote-TM umfasst und dieser Knoten nicht verfügbar ist, sein Knoten nicht verfügbar ist oder der lokale Distributed Transaction Coordinator-Dienst nicht verfügbar ist, ist der Transaktionsstatus zweifelhaft.
-
-
TRANSACTION_NOTIFY_TM_ONLINE
-
-
0x02000000
-
Das TM ist online und akzeptiert Anfragen.
-
-
TRANSACTION_NOTIFY_REQUEST_OUTCOME
-
-
0x20000000
-
Signalisiert RMs, dass Ergebnisinformationen verfügbar sind und dass eine Anforderung für diese Informationen gestellt werden sollte.
-
-
TRANSACTION_NOTIFY_COMMIT_FINALIZE
-
-
0x40000000
-
Reserviert.
-
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista |
Unterstützte Mindestversion (Server) |
WindowsServer 2008 |
Header |
|