Indexing RavenDB中单调阅读和ReadYourWrites的区别是什么?

Indexing RavenDB中单调阅读和ReadYourWrites的区别是什么?,indexing,ravendb,isolation-level,consistency,eventual-consistency,Indexing,Ravendb,Isolation Level,Consistency,Eventual Consistency,RavenDB(build 888)中DocumentConvention的默认ctor将DefaultQueryConsistency设置为MontonicRead。据我所知,这意味着默认情况下,我们将等待在写入之后更新索引。不要误解我的意思——这对于简单性来说是个好消息(特别是在集成测试中),但这与我所理解的RavenDB最终一致性的咒语是背道而驰的 我读过ConsistencyOptions.cs中的引用,但我不清楚单调阅读和ReadYourWrites之间的区别是什么——我觉得它们似乎是

RavenDB(build 888)中DocumentConvention的默认ctor将DefaultQueryConsistency设置为MontonicRead。据我所知,这意味着默认情况下,我们将等待在写入之后更新索引。不要误解我的意思——这对于简单性来说是个好消息(特别是在集成测试中),但这与我所理解的RavenDB最终一致性的咒语是背道而驰的

我读过ConsistencyOptions.cs中的引用,但我不清楚单调阅读和ReadYourWrites之间的区别是什么——我觉得它们似乎是一样的


那么:这两个一致性模型之间的区别是什么?这与RavenDB的一致性模型有什么关系?

ReadYourWrites相当于对所有查询执行WaitForNonSalesultsAsoflastWrite。
这意味着您不会从任何地图索引中获得任何过时的结果(或获得超时异常),但您可能仍然会从地图/reduce查询中获得过时的结果。

您可能想在Raven的google groups页面上向开发者问这个问题。他们最清楚。