applier 从 stager 创建的控制表中读取数据。它开始处理必需的事务,并更新控制表以显示该事务正在处理。 接下来,它按顺序对每条日志记录逐行进行操作,直到事务落实。
所有对控制表的更新在同一个事务中以日志记录修改的形式出现。 这使得所有的工作可以作为一个独立单元完成或撤销,始终保持了完整性。 如果发生了错误,就会回滚事务,该错误将记录到该事务的控制表条目中。
如果数据正在复原而数据库管理员决定包含逻辑复原,那么两个附加的工作列和一个索引将被添加到目标表中。 这些列包含了原始行标识及原始部件号。 这些列提供了在原始的源归档中识别该行位置的唯一键。 要控制索引的存储,可使用 SET WORKSPACE 命令(请参阅 SET 语句)。 否则会将索引和表存储在同一个空间。
applier 结束且复原完成之后,这些列以及对它们创建的任何索引都将从目标表中删除。