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
-
Это уведомление сигнализирует RM о завершении и фиксации транзакции без использования протокола двухфазной фиксации. Если RM хочет использовать двухэтапную операцию, она должна ответить, вызвав функцию 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 и этот узел недоступен, его узел недоступен или локальная служба координатора распределенных транзакций недоступна, состояние транзакции вызывает сомнения.
-
-
TRANSACTION_NOTIFY_TM_ONLINE
-
-
0x02000000
-
ТМ находится в сети и принимает запросы.
-
-
TRANSACTION_NOTIFY_REQUEST_OUTCOME
-
-
0x20000000
-
Сигнализирует RM о наличии сведений о результатах и о том, что необходимо запросить эти сведения.
-
-
TRANSACTION_NOTIFY_COMMIT_FINALIZE
-
-
0x40000000
-
Зарезервировано.
-
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista |
Минимальная версия сервера |
Windows Server 2008 |
Заголовок |
|