【问题标题】:RavenDb script patching consistencyRavenDb 脚本补丁一致性
【发布时间】:2015-02-26 17:03:41
【问题描述】:

我有一个相当复杂的文档修改逻辑。在此逻辑执行期间,此文档被其他调用者修改时会出现问题。因此,当我调用 DocumentSession.SaveChanges 时,我可以放弃其他调用者所做的一些更改。作为解决它的一种方法,我实现了一个补丁脚本。我的问题是 RavenDb 是否保证在执行修补脚本时文档不会被其他调用者修改。那么 RavenDb 内部有没有类似文档修改队列的东西呢?

【问题讨论】:

    标签: ravendb


    【解决方案1】:

    伊莎, 你可以通过在会话上设置UseOptimisticConcurrency=true; 来解决这个问题,这将导致ConcurrencyException 被抛出。

    使用补丁,我们将确保补丁始终在文档的一致视图上运行,并且只有在没有修改的情况下才会应用。如果中途修改,补丁将重新应用到新版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多