Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
您可以使用此存储过程以编程方式来确定何时需要重新扫描。
publication_n (in)
发布
不建议使用。改用 subscription_n。正被同步的发布,其中 n 是一个整数。每个正在同步的发布都有一个 publication_n 条目。n 的编号从零开始。
MobiLink user (in)
MobiLink 用户名
您正在为其进行同步的 MobiLink 用户。
discarded storage (in)
数字
最后一次同步后放弃的内存的字节数。
rescan (in|out)
如果被挂接设置为 True,dbmlsync 会在下次同步前执行完整的重新扫描。开始时,此值被设置为 False。
script version (in)
脚本版本名称
将用于同步的 MobiLink 脚本版本。
如果在命令行中指定了多个 -n 选项或 -s 选项,则 dbmlsync 可能会遇到碎片,而碎片会形成被放弃的内存。可以通过重新扫描数据库事务日志来恢复放弃的内存。使用此挂接可以决定 dbmlsync 是否应重新扫描数据库事务日志以恢复内存。
如果未遇到将强制重新扫描的其它情况,则在 sp_hook_dbmlsync_process_exit_code 挂接后立即调用此挂接。
如果放弃的存储大于 1000 个字节,以下示例将进行日志扫描。
CREATE PROCEDURE sp_hook_dbmlsync_log_rescan () BEGIN IF EXISTS(SELECT * FROM #hook_dict WHERE name = 'Discarded storage' AND value>1000) THEN UPDATE #hook_dict SET value ='true' WHERE name='Rescan'; END IF; END;