NOTIFICATION_MASK
인리스트먼트에서 수신할 수 있는 다양한 유형의 알림을 나열합니다.
-
TRANSACTION_NOTIFY_MASK
-
-
0x3FFFFFFF
-
트랜잭션 알림에 유효한 모든 비트를 나타내는 마스크입니다.
-
-
TRANSACTION_NOTIFY_PREPREPARE
-
-
0x00000001
-
이 알림은 클라이언트가 CommitTransaction을 호출하고 RM(리소스 관리자)이 단일 단계 커밋을 지원하지 않거나 TM(우수한 트랜잭션 관리자)이 PrePrepareEnlistment를 호출한 후에 호출됩니다. 이 알림은 RM이 캐시 플러시와 같이 다른 RM이 트랜잭션에 참여해야 할 수 있는 작업을 완료해야 함을 나타내는 수신됩니다. 이러한 작업을 완료한 후 RM은 PrePrepareComplete를 호출해야 합니다. 이 알림을 받으려면 RM도 TRANSACTION_NOTIFY_PREPARE 및 TRANSACTION_NOTIFY_COMMIT 지원해야 합니다.
-
-
TRANSACTION_NOTIFY_PREPARE
-
-
0x00000002
-
이 알림은 TRANSACTION_NOTIFY_PREPREPARE 처리가 완료된 후에 호출됩니다. 커밋 작업이 성공하고 중단 작업도 성공할 수 있도록 RM에 이 인리스트먼트와 연결된 모든 작업을 완료하도록 알릴 수 있습니다. 일반적으로 트랜잭션에 대한 작업의 대부분은 준비 단계에서 수행됩니다. 지속성 RM의 경우 PrepareComplete 함수를 호출하기 전에 상태를 기록해야 합니다. RM이 트랜잭션 롤백을 요청할 수 있는 마지막 기회입니다.
-
-
TRANSACTION_NOTIFY_COMMIT
-
-
0x00000004
-
이 알림은 RM에 이 인리스트먼트와 연결된 모든 작업을 완료하라는 신호를 보냅니다. 일반적으로 RM은 잠금을 해제하고 트랜잭션을 롤백하는 데 필요한 모든 정보를 해제합니다. RM은 이러한 작업을 완료할 때 CommitComplete 함수를 호출하여 응답해야 합니다.
-
-
TRANSACTION_NOTIFY_ROLLBACK
-
-
0x00000008
-
이 알림은 트랜잭션과 연결된 모든 작업을 실행 취소하도록 RM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_PREPREPARE_COMPLETE
-
-
0x00000010
-
이 알림은 사전 준비 작업이 성공적으로 완료되었음을 우수한 TM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_PREPARE_COMPLETE
-
-
0x00000020
-
이 알림은 준비 작업이 성공적으로 완료되었음을 우수한 TM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_COMMIT_COMPLETE
-
-
0x00000040
-
이 알림은 커밋 작업이 성공적으로 완료되었음을 우수한 TM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_ROLLBACK_COMPLETE
-
-
0x00000080
-
이 알림은 롤백 작업이 성공적으로 완료되었음을 우수한 TM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_RECOVER
-
-
0x00000100
-
이 알림은 트랜잭션 결과를 다시 배달해야 하므로 RM에 상태를 복구해야 한다는 신호를 보냅니다. 예를 들어 RM이 복구되는 경우 및 의심스러운 트랜잭션이 남아 있는 경우입니다. 이 알림은 의심스러운 상태가 해결되면 전달됩니다.
-
-
TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT
-
-
0x00000200
-
이 알림은 2단계 커밋 프로토콜을 사용하지 않고 트랜잭션을 완료하고 커밋하도록 RM에 알릴 수 있습니다. RM이 2단계 작업을 사용하려는 경우 SinglePhaseReject 함수를 호출하여 응답해야 합니다.
-
-
TRANSACTION_NOTIFY_DELEGATE_COMMIT
-
-
0x00000400
-
KTM은 커밋 작업을 수행하기 위해 우수한 TM에 신호를 보냅니다.
-
-
TRANSACTION_NOTIFY_RECOVER_QUERY
-
-
0x00000800
-
KTM은 의심스러운 트랜잭션의 상태 쿼리하기 위해 우수한 TM에 신호를 보냅니다.
-
-
TRANSACTION_NOTIFY_ENLIST_PREPREPARE
-
-
0x00001000
-
이 알림은 미리 준비 알림이 지정된 인리스트먼트에 전달되어야 한다는 것을 우수한 TM에 알릴 수 있습니다.
-
-
TRANSACTION_NOTIFY_LAST_RECOVER
-
-
0x00002000
-
이 알림은 이 RM에 대한 복구 작업이 완료되었음을 나타냅니다.
-
-
TRANSACTION_NOTIFY_INDOUBT
-
-
0x00004000
-
지정된 트랜잭션이 의심스러운 상태입니다. RM은 트랜잭션이 준비되었을 때 복구 작업 중에 이 알림을 수신하지만 사용할 수 있는 우수한 TM(트랜잭션 관리자)은 없습니다. 예를 들어 트랜잭션에 원격 TM이 포함되고 해당 노드를 사용할 수 없거나 해당 노드를 사용할 수 없거나 로컬 Distributed Transaction Coordinator 서비스를 사용할 수 없는 경우 트랜잭션 상태가 의심스럽다.
-
-
TRANSACTION_NOTIFY_TM_ONLINE
-
-
0x02000000
-
TM은 온라인 상태이며 요청을 수락합니다.
-
-
TRANSACTION_NOTIFY_REQUEST_OUTCOME
-
-
0x20000000
-
RM에 사용할 수 있는 결과 정보가 있고 해당 정보에 대한 요청이 이루어져야 한다는 신호를 보냅니다.
-
-
TRANSACTION_NOTIFY_COMMIT_FINALIZE
-
-
0x40000000
-
예약되어 있습니다.
-
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows Vista |
지원되는 최소 서버 |
Windows Server 2008 |
헤더 |
|