我们有一种情况,我们在 Service Broker 队列上发送消息作为分布式事务的一部分。显然,我们只希望在事务完成时发送消息。
但是我们发现在这种情况下,队列的接收端在事务提交之前接收到消息,不知何故也被注册了。如果发件人随后回滚,这将导致连锁问题,最终导致队列因有毒消息而被禁用。
这是预期的行为吗?如果是这样,我们如何以事务方式发送消息?
我们有一种情况,我们在 Service Broker 队列上发送消息作为分布式事务的一部分。显然,我们只希望在事务完成时发送消息。
但是我们发现在这种情况下,队列的接收端在事务提交之前接收到消息,不知何故也被注册了。如果发件人随后回滚,这将导致连锁问题,最终导致队列因有毒消息而被禁用。
这是预期的行为吗?如果是这样,我们如何以事务方式发送消息?