【发布时间】:2011-10-12 01:08:39
【问题描述】:
服务器版本:SQL Server 2008R2 客户端版本:SQL Server Express 2008R2
我在运行合并复制过程时遇到了似乎是锁定问题。似乎是对订阅者进行更改并与发布者同步时。我很肯定来自触发器,因为它们似乎再次向发布者触发,并且可能试图再次将数据发送给订阅者。我在触发器中添加了“NOT FOR REPLICATION”,但这似乎没有帮助。我也研究并尝试添加以下子句。
DECLARE @is_mergeagent BIT
SELECT @is_mergeagent = convert(BIT, sessionproperty('replication_agent'))
IF @is_mergeagent = 0 --IF NOT FROM REPLICATION
这似乎也没有帮助。您如何使用插入/更新触发器处理合并复制?我可以阻止他们“双重”射击吗?
永远感谢这些信息。
--S
【问题讨论】:
-
你的意思是他们也在向订阅者开火?
-
嗨亚伦,它在订阅者的初始插入时触发,然后在同步时触发发布者(在不应该创建第二个条目时)然后第二个条目返回给订阅者在同一个同步运行中......这似乎导致了锁定。
标签: sql-server sql-server-2008 replication sql-server-express