假设我有一个具有两个属性的文档,"Start“和”End“。一个修订可能有开始的时间,结束的时候为null,反之亦然。与其选择单个版本作为赢家,我希望最终的文档包含从修订开始的时间,在那里它不是空的,对于结束也是一样的。
在同步过程中,是否有处理此类冲突解决的最佳实践?我找到的文档包含了选择一个修订版作为赢家的说明,但是我想从多个revs中选择值。
特定于C#/MyCouch库的例子是很好的,但是任何一般性的或其他的语言建议也是非常感谢的。
发布于 2016-08-12 13:21:04
您不能在复制期间指定冲突解决的自定义方法(a.k.a )。同步)。CouchDB自动选择获奖版本,您不能影响:
默认情况下,CouchDB使用确定性算法选择一个任意的修订版作为“赢家”,以便在所有对等点上做出相同的选择。
您可以等待复制完成,然后通过执行特定于应用程序的文档修订合并来处理冲突。
查看处理相互冲突的文件的文档,我发现了以下伪代码示例:
https://stackoverflow.com/questions/38727207
复制相似问题