0

我有一个带有一些集合和大约 30 个索引的 RavenDB。

我正在尝试通过 DatabaseCommands.UpdateByIndex 和 PatchRequest 在特定集合(配置文件)中执行一些大规模更新,实际上我的代码是这样的:

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

其中“Profiles/ByFinder”是适用于该特定集合的索引。

奇怪的是,当我执行此命令时,数据库中的所有索引都处于陈旧状态,即使是那些无法以任何方式与 Profiles 集合一起使用的索引。

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

4

1 回答 1

1

也就是说,无论何时修改文档,所有文档都是过时的,直到他们可以验证该文档与它们无关。

于 2014-11-27T19:16:07.180 回答