我们有一个非常奇怪的问题,使用带有MSSQL的EF 6和带有Rabbit MQ的MassTransit。
方案如下:
我一直认为在提交之后,该行会被持久化并且可以被其他连接访问...
我们在数据库中有ALLOW_SNAPSHOT_ISOLATION。
这是什么原因,有没有办法确保在将Id发布到MQ之前可以访问该行?
答案 0 :(得分:1)
如果您依赖于在事件处理程序可以继续之前完成的另一个事务,则需要使您可以读取序列化。否则,事务彼此隔离,并且写入事务的结果尚不可用。您的写入可能还需要序列化,具体取决于查询的结构。
是的,消费者很快就会这么做。