更改订阅源是否可以无序返回更改?

时间:2017-02-17 19:40:35

标签: rethinkdb

如果可以并行发生许多写入查询,是否有可能两个更改订阅源订阅者可以看到相同的更改但是以不同的顺序,或者看到更改但不在"时间顺序&#34 ;订购。例如更改在B之前提交的A,但更改订阅源订阅者首先接收更改B,然后再接收A。

1 个答案:

答案 0 :(得分:1)

是的,更改可能是乱序的:

  
      
  1. 在许多情况下,不同的分片的Primaries不同   服务器。因此,包含该分片的更改的消息可能会到达   在不同的时间,他们可能是托管改变饲料的机器   以不同的顺序行事。此外还有一些内部   详细说明如何处理可能卷绕的每个服务器内的消息   即使是来自同一分片的消息,也会以不同的顺序出现。然而,   我们在该系统中有逻辑来保证对于给定的id我们将   始终以正确的顺序查看更改,因此您永远不会看到数据   及时向后移动。

  2.   
  3. 试图减少金额   高度易变的数据上的网络流量我们有这个概念   压缩,处理更改源的服务器组合多个   在发送文档之前将其更改为单个条目   沿。压扁的确切输出对精确度非常敏感   时间(以及客户端中的缓存行为[2]),等等   一个相对较好的机会,你会看到不同的时间点   在非常活跃的值的条目中。

  4.   

https://github.com/rethinkdb/rethinkdb/issues/5969#issuecomment-233420705