C# CouchDB中的冲突处理
假设我有一个有两个属性的文档,开始和结束。一个版本的开始时间可能为空,结束时间可能为空,反之亦然。我希望最终文档包含从修订开始的开始时间,而不是选择一个修订作为赢家,因为该修订不为空,并且结束时间相同 在同步过程中,是否有处理此类冲突解决的最佳做法?我找到的文档包含了选择单个版本作为赢家的说明,但我想从多个版本中选择值C# CouchDB中的冲突处理,c#,couchdb,mycouch,C#,Couchdb,Mycouch,假设我有一个有两个属性的文档,开始和结束。一个版本的开始时间可能为空,结束时间可能为空,反之亦然。我希望最终文档包含从修订开始的开始时间,而不是选择一个修订作为赢家,因为该修订不为空,并且结束时间相同 在同步过程中,是否有处理此类冲突解决的最佳做法?我找到的文档包含了选择单个版本作为赢家的说明,但我想从多个版本中选择值 特定于C/MyTouch库的示例将非常好,但也非常感谢任何常规或其他语言建议。在复制过程中,您不能指定自定义的冲突解决方法a.k.a.同步。CouchDB会自动选择获胜版本,您无
特定于C/MyTouch库的示例将非常好,但也非常感谢任何常规或其他语言建议。在复制过程中,您不能指定自定义的冲突解决方法a.k.a.同步。CouchDB会自动选择获胜版本,您无法影响: 默认情况下,CouchDB选择一个任意版本作为赢家, 使用确定性算法,以便做出相同的选择 在所有同龄人身上 您可以等待复制完成,然后通过执行特定于应用程序的文档修订合并来处理冲突 查看的文档中,我发现了以下伪代码示例: 获取docid?冲突=true 对于_冲突数组中的每个成员: 获取docid?rev=xxx 如果在此阶段出现任何错误,请从步骤1重新启动。 可能有一场比赛,其他人已经解决了这个问题 冲突并删除了该版本 执行特定于应用程序的合并 编写批量文档,更新第一次修订并删除 其他转速。