【发布时间】:2016-07-21 14:02:31
【问题描述】:
我正在调查一个不是我构建的流程。它使用服务代理创建一个联系人队列,然后需要对他们采取行动。
然后有一个处理程序接收 10k 条记录并将它们传递给存储过程进行处理。
如果最终进程因没有错误处理的死锁而失败,会发生什么?这些会回到队列中吗?如果不是,我需要做什么才能让他们重新进入队列?
【问题讨论】:
-
您是否尝试过使进程死锁并查看会发生什么?
-
没有。不幸的是,我目前在实时服务器上。我希望有人会知道这是否有标准行为。我在搜索时看到了相互矛盾的报告,我想避免创建一个新流程来测试标准行为。也就是说,如果存在标准行为。
-
如果这一切都在事务中,那么它就会回滚。如果没有,那么你有:
peek- 完成,process- 失败。作为单独的交易。
标签: sql sql-server tsql message-queue service-broker