Couchbase Lite复制setFilter和setFilterParams

时间:2016-08-27 19:09:36

标签: database-replication couchbase-lite

couchbase docs,我看到我可以设置推送过滤器和过滤器参数。但是,当过滤器发生变化时,我不清楚这是如何工作的。例如,假设我执行以下操作:

push.setFilter("byOwner");
Map<String, Object> params = new HashMap<String, Object>();
params.put("name", "Waldo");
push.setFilterParams(params);

其中byOwner仅允许name拥有的文档,因此在这种情况下Waldo。属于Waldo的多个文档会随着时间的推移而发生变化,属于用户Foo的文档也会发生变化,但只有Waldo才会通过复制。然后,几分钟后,我做了:

Map<String, Object> params = new HashMap<String, Object>();
params.put("name", "Foo");
push.setFilterParams(params);

推送复制现在是否会将Foo拥有的所有已更改文档推送到服务器?或者它只会选择新的更改(意味着重置params后的更改)并将它们发送到服务器?

1 个答案:

答案 0 :(得分:0)

它将推送Foo拥有的所有文档(如果它没有提交错误报告)。