内核事务管理器函数
以下函数用于事务。
函数 | 说明 |
---|---|
CommitTransaction | 请求提交指定的事务。 |
CommitTransactionAsync | 请求提交指定的事务。 |
CreateTransaction | 创建新的事务对象。 |
GetTransactionId | 获取指定事务的 ID。 |
GetTransactionInformation | 返回有关指定事务的请求信息。 |
OpenTransaction | 打开现有事务。 |
RollbackComplete | 指示资源管理器 (RM) 已成功完成事务回滚。 |
RollbackTransaction | 请求回滚指定的事务。 |
RollbackTransactionAsync | 请求回滚指定的事务。 此函数异步返回。 |
SetTransactionInformation | 设置指定事务的事务信息。 |
以下函数用于登记。
函数 | 说明 |
---|---|
CommitComplete | 指示 RM 已完成提交事务管理器 (TM) 请求的事务。 |
CommitEnlistment | 为指定的登记提交事务。 |
GetEnlistmentId | 获取指定登记的 ID。 |
CreateEnlistment | 创建登记,设置其初始状态,并打开具有指定访问权限的登记的句柄。 |
GetEnlistmentRecoveryInformation | 从 KTM 检索恢复数据的不透明结构。 恢复信息通过调用 SetEnlistmentRecoveryInformation 函数代表 RM 存储在日志中。 失败后,RM 可以使用 GetEnlistmentRecoveryInformation 函数来检索信息。 |
OpenEnlistment | 打开现有的登记对象,并返回登记的句柄。 |
PrepareEnlistment | 由上级 TM 调用,以指示他们的预准备工作已完成。 |
PrePrepareEnlistment | 由上级 TM 调用,以指示他们的预准备工作已完成。 |
RecoverEnlistment | 恢复登记的状态。 |
ReadOnlyEnlistment | 请求将指定的登记转换为只读登记。 只读登记不能参与事务的结果,并且不会持久记录以供恢复。 |
RollbackEnlistment | 回滚与登记关联的指定事务。 无法为只读登记调用此函数。 |
SetEnlistmentRecoveryInformation | 设置从 KTM 恢复数据的不透明、用户定义的结构。 恢复信息通过调用 SetEnlistmentRecoveryInformation 代表 RM 存储在日志中。 失败后,RM 可以使用 GetEnlistmentRecoveryInformation 检索信息。 |
SinglePhaseReject | 指示 RM 拒绝单阶段请求。 当 TM 收到此调用时,它会启动一个两阶段提交,并向所有登记的 RM 发送准备请求。 |
以下函数用于资源管理器。
函数 | 说明 |
---|---|
CreateResourceManager | 创建新的 RM 对象,并将 RM 与事务管理器关联 (TM) 。 |
GetNotificationResourceManager | 请求并接收 RM 的通知。 RM 寄存器使用此函数在事务更改状态时接收通知。 |
GetNotificationResourceManagerAsync | 请求并接收 RM 的异步通知。 RM 使用此函数进行注册,以在事务更改状态时接收通知。 |
OpenResourceManager | 打开现有 RM。 |
PrepareComplete | 指示 RM 已完成保证指定事务的提交或中止操作成功所需的所有处理。 |
PrePrepareComplete | 指示此 RM 已完成其准备工作,以便其他 RM 现在可以开始其准备操作。 |
RecoverResourceManager | 从其日志文件中恢复 RM 的状态。 |
SetResourceManagerCompletionPort | 将指定的 I/O 完成端口与指定的 RM 相关联。 此端口接收 RM 的所有通知。 |
以下函数用于事务管理器。
函数 | 说明 |
---|---|
CreateTransactionManager | 创建新的 TM 对象并返回具有指定访问权限的句柄。 |
GetCurrentClockTransactionManager | 从 TM 获取虚拟时钟值。 |
GetTransactionManagerId | 获取指定 TM 的标识符。 |
OpenTransactionManager | 打开现有 TM。 |
OpenTransactionManagerById | 打开现有 TM。 |
RecoverTransactionManager | 从其日志文件中恢复 TM 的状态。 |
RenameTransactionManager | 重命名 TM。 |
RollforwardTransactionManager | 将 TM 的状态从其日志文件恢复到指定的虚拟时钟值。 |