Поле Cutoff Date и история репликаций базы
Проверки поля Cutoff Date и истории репликаций позволяют репликатору максимально сократить множество документов, просматриваемых на предмет возможного участия в репликации.
Поле Cutoff Date
(в версиях 4.х метка поля Only replicate incoming documents saved or modified after:) требует при репликациях принимать в данную реплику только те документы, которые имеют дату модификации позже указанной в поле.
Документы из других реплик этой базы с датой модификации до Cutoff Date никогда не включаются в списки реплицируемых документов и, следовательно, никогда не будут приняты в эту реплику. Репликатор всегда проверяет Cutoff Date и принимает в "свою" реплику только документы, созданные или измененные после этой даты. Аналогично и "окурки" документов, удаленных ранее Cutoff Date, не будут приниматься в реплику этой базы с других серверов. Даже если вы очищаете "историю репликаций".
Рис. 6.15 История репликаций - база на сервере NotesSrv400 в последний раз "отправляла" изменения на сервер InterTrust в 11:10:13, а принимала с него изменения в 10:47:49
Рис. 6.16 История репликаций - база на сервере InterTrust в последний раз "отправляла" изменения на сервер NotesSrv400 в 10:47:49, а принимала с него изменения в 11:10:13
История репликаций содержит время и дату последней успешной репликации с перечисленными в записях истории серверами. Notes при очередной репликации будет при составлении списков реплицируемых документов учитывать только документы, добавленные, измененные или удаленные по времени позднее времени из записи в истории репликаций для этого сервера. После очередной успешной репликации с этим сервером относящиеся к нему записи в истории репликаций заменяются. Если списки истории на обеих сторонах не согласованы (например, если вы очищаете историю на одной стороне), в базе данных будут проверены на предмет участия в репликации все документы, более новые, чем Cutoff Date базы.
При некоторых ситуациях может быть даже полезно очистить историю, потому что этим вы обеспечите полную проверку всех документов в базе на предмет репликации. Вот одна из множества таких ситуаций. Предположим, в документах базы имелись поля типа Readers, в которых использовались имена групп. Ваш сервер не входил ни в одну из этих групп, и такие документы были серверу "не видны", а потому и не реплицировались. Вы добавили имя сервера в состав групп, и теперь хотите реплицировать "прежде невидимые" документы. Но не тут то было... Теперь эти документы стали "видны" серверу, но не реплицируются, поскольку изменения в составе групп не привели к модификации самих документов, а согласно истории репликаций эти документы уже не учитываются.
Так что, если базы данных после репликации не синхронизированы или не имеют одинакового количества документов, причиной этого могли бы быть Cutoff Date или история репликаций. Но не только они.