我有一个应用程序,其中远程数据库中可用的文档是服务器上可用文档的子集。当用户所需的子集发生更改时,将清除远程数据库中不再需要的文档(是,已清除,未删除),并复制了新文档。如果将用户所需的子集更改为包括以前已清除的文档,我将找不到一种方法来再次复制已清除的文档以在客户端上恢复它们。
要考虑的简单场景是:
我尝试压缩B,但无济于事。我可以理解,对于连续复制,D不会再次发送,因为它没有更改。但是我也无法使用一次性复制来重新复制D。 CouchDB处于这种状态后,如何将复制副本D从A复制到B?
我正在使用CouchDB 2.3。
我可以想到两种解决方案:
_local/
文档并删除它们来手动删除这些复制日志。甚至略微更改复制参数,以便CouchDB为记录而生成新的replication ID。一种方法是添加过滤器功能(它可能是不过滤任何内容的过滤器功能)。