Администрирование Lotus Notes 4.1x и Lotus Domino 4.5


Репликационные конфликты


Когда репликатор обнаруживает конфликт, он выбирает версию документа, имеющую более позднее время модификации, и сохраняет в "своей" реплике в качестве главного документа. Другая версия этого документа тоже сохраняется в "своей" реплике, но в качестве ответного документа (response) на главный. В ответный документ также добавляется поле с именем $Conflict и пустым значением. Ответные документы, имеющие поле $Conflict, "отмечаются" ромбиком на левом поле вида и сопровождаются пояснением [Replication or Save Conflict].

Рис.  6.22  Пример конфликтных документов в виде: "How to Migrate..." - конфликтный главный документ, ромбиком же отмечен конфликтный ответный документ.

Для разрешения возникших конфликтов в общем случае потребуется вмешательство лиц, вносивших изменения в документы, поскольку необходимо осмысление имеющихся изменений.

Технически же дело обстоит так. Если нет необходимости оставлять в базе конфликтный ответный документ, его попросту удаляют. Если нет необходимости оставлять конфликтный главный документ, нужно сначала открыть в режиме редактирования конфликтный ответный документ и заново сохранить его, а только потом удалять главный документ. Дело в том, что при "пересохранении" конфликтного ответного документа из него автоматически удаляются поля $Conflict и $Ref. Если же сразу удалить конфликтный главный документ, то конфликтный ответный окажется "документом без родителя" (его поле $Ref содержит универсальный идентификатор уже не существующего главного документа), и в результате перестанет отображаться в виде, поддерживающем иерархию ответных документов. Наконец, если должны остаться оба конфликтных документа, достаточно "пересохранить" конфликтный ответный документ.

Если в процессе эксплуатации базы наблюдается "усиленная" тенденция к образованию конфликтов, скорее всего, наступило время задуматься об изменении дизайна базы. Для "борьбы" с конфликтами имеется ряд приемов, среди наиболее простых из которых можно отметить имеющиеся в окне свойств формы опции Versioning - управление версиями документа и Merge replication conflicts - автоматическое слияние конфликтных документов, если разные пользователи изменяли в них разные поля.



Содержание раздела