我们有这样一种情况:我们在Service Broker队列上作为分布式事务的一部分发送消息。显然,我们只希望在事务完成时发送消息。
然而,我们发现在这种情况下,队列的接收端在事务提交之前接收消息,以某种方式也被注册。如果发送者随后回滚,这会导致敲门问题,最终导致队列因有毒消息而被禁用。
这是预期的行为吗?如果是这样,我们如何以事务方式发送消息?
发布于 2012-05-07 15:02:59
你是用NOLOCK提示来读队列的,这是真的吗?在这种情况下-您可以在队列中看到消息,但实际上您无法接收它!只有在事务提交之后,它才能被接收。
https://stackoverflow.com/questions/10430078
复制相似问题