RavenDB更新非规范化引用和陈旧索引

时间:2014-11-27 15:53:40

标签: indexing ravendb eventual-consistency

我的RavenDB包含一些集合和大约30个索引。

我试图通过DatabaseCommands.UpdateByIndex和PatchRequest在特定集合(Profiles)中执行一些批量更新,实际上我的代码是这样的:

db.DatabaseCommands.UpdateByIndex("Profiles/ByFinder",  new
    Raven.Abstractions.Data.IndexQuery {  },    new [] { new PatchRequest {
    Type = PatchCommandType.Unset, Name = "CreatedById" } });

"个人资料/ ByFinder" 是适用于此特定馆藏的索引。

奇怪的是,当我执行此命令时,数据库中的 ALL 状态变为陈旧状态,即使是不能以任何方式使用“个人档案”集合的索引。 / p>

这是默认行为,如果是,那么有办法避免它吗?

1 个答案:

答案 0 :(得分:1)

根据设计,无论何时修改文档,所有文档都是陈旧的,直到他们可以验证该文档与它们无关。