Удаление Документов С Readers-полями При Репликации

Тема в разделе "Lotus - Администрирование", создана пользователем Мыш, 24 июн 2013.

  1. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Все привет. Вот столкнулся недавно с сабжем. Есть 2 реплики на серверах СерверА и СерверБ. Сервер Б оказался ошибочно не указан в полях Readers в некоторых документах. В один прекрасный момент (хз, почему, подозреваю, что почистили хистори), при репликации СерверА<->СерверБ из реплики на СервереБ все эти документы были удалены.
    Вот помню, что так, вроде, и должно быть - но нигде толком не могу найти пруфа. Тыкните в доку, плиз, если не сложно.
    ЗЫ. Нашел вот такую статью, но тут данный эффект упоминается как бы вскользь... А хотелось бы поподробнее.
    ЗЗЫ. Вот тут идет бурное обсуждение - в частности, на фига удалять док-т, если нет deletion stub'а...
     
  2. rinsk

    rinsk Lotus team
    Lotus team

    Регистрация:
    12 ноя 2009
    Сообщения:
    797
    Симпатии:
    78
    Да - правильно удалены. Что смущает?

    И правильно что без стаба - представвь сервер С, который реплицируется и с А и с Б:)
     
  3. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    в кратце так
    сервер Б составляет список что он может реплицировать
    так как документы в которых он должен был быть указан он не видит, то они в список не попадают
    реплицирует доки и стабы
    так как доки которые он не видит не попадают не в доки не в стабы они удаляются нафиг
     
  4. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    ToxaRat, спасибо, доходчиво объяснил :)
    rinsk, меня вот на чем переклинило (только что сообразил). Если в одной реплике взвести галку "Remove documents not modified...", то Лотус устаревшие документы в ней, как известно, удаляет без stub' ов. Но при этом в других-то репликах эти документы замечательно живут. Вот я и решил чего-то, что с READERS-полями будет то же самое поведение репликатора...
     
  5. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    Сервер как и пользователь - если чего-то не видит значит считает что этого нету :)
     
  6. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    А вот фиг! Раз он из не видит, то и НЕ ДЕЛАЕТ с ними ничего.

    Удаляются они в том случае, если сервер их видит, НО НЕ ДОЛЖЕН (судя по соседней реплике, где они закрыты полем Readers)
     
  7. Baneslaer

    Baneslaer Well-Known Member

    Регистрация:
    25 янв 2011
    Сообщения:
    121
    Симпатии:
    0
    Правильнее было бы написать, если их сервер ВИДЕЛ, но в результате отработки агента перестал видеть.
    А то видит, но не должен - звучит как странно =)

    - Ты суслика видишь?
    - Нет!
    - Я тоже нет, а он есть! (с)

    >> ToxaRat

    если бы так все работало, как ты написал, то тогда бы не было понятия частичной репликации доков =)
     
  8. Kee_Keekkenen

    Kee_Keekkenen Well-Known Member

    Регистрация:
    5 сен 2006
    Сообщения:
    616
    Симпатии:
    4
    холивар какой-то ни о чем.. слепого с хлухим..

    при чем тут частичная репликация ?! она возможна при условии что оба сервера видят документ..

    во всем этом есть один непроверенный момент, проверьте у кого есть несколько серверов..
    например, с сервера А создается реплика на сервер Б, затем сервер Б исключается из ридер-доступа к части документов и производится репликация со стороны сервера А

    вот тут интересный момент сервер А видит все документы, но будет ли репликация удалять на сервере Б, те документы, которые он (сервер Б) не должен видеть по изменении ридер-видимости, логично было бы предположить, что сервер А не должен их удалять.. удаление документов должно отрабатываться при репликации со стороны сервера Б (хотя как это будет работать, когда он их не должен видеть :()

    проверьте кому не лень этот момент :)
     
  9. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    если бы так все работало, как ты написал, то тогда бы не было понятия частичной репликации доков =)
    ->при чем тут частичная репликация ?! она возможна при условии что оба сервера видят документ..
    +1
    частичная репликация если так по правде сказать, несуществует, так как это всё равно полная репликация, но лишь изменение полей и их счетчика изменения - в общем я не вижу разницы между частичной и полной репликацией, на трафике тоже ничего не экономится

    да, можно такие глюки когда все доки переежали на новую реплику а со старой удалялись, но глюки были из-за истории репликации, сейчас всё это починили и удаляются только на реплике инициатора
     
  10. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Все комбинации проверить, конечно, не удалось. При выставлении debug-параметров обнаружилось следующее:

    Итак, СерверА и СерверБ, репликация СерверБ <- pull/push -> СерверА.
    Создаем док-т на СерверБ (без Readers).
    Проходит репликация (док-т пока в обеих репликах).
    На СерверБ добавляем в Readers только СерверА.
    Проходит репликация (док-т пока в обеих репликах - версии док-та синхронны, так что, видимо, удаления не будет).
    Модифицируем док-т на СерверА.
    Проходит репликация - док-т удаляется.
    Логи с СерверБ:

    REPLICA: *** Starting replication
    of source database СерверА!!test\testbase.nsf to destination
    test/testbase.nsf
    Pulling test\testbase.nsf from СерверА test\testbase.nsf
    ...
    REPLICA: ...Skipping note in Destination list (UNID
    <UNID нашего дока> SrcNote ID 0x8FA;DestNote ID
    0x8FE;Class 0x0001);
    REPLICA: ... (con't) Note no longer matches Selective Replication formula

    Ну и далее док-т, соббсно, удаляется.

    Т.е., выходит, сам СерверБ видит, что у него (в Destination list ведь!) имеется док-т, не соответствующий условиям репликации, и удаляет его...
     
  11. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    что собственно я и писал

    есть идея, что это связано со стабами- раз сервер не видит док, хоть он у него и имеется в базе, значит он считает, что это уже стаб, который своё время отжил и должен быть удален полностью (даже стаба не остается)
     
  12. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    В моем случае с полями Readers накосячили разрабы, а начальство кивает на меня - дескать ,вот у тебя с какого-то фига док-ты пропадают.
    Поэтому очень хочется найти четкое описание данного явления либо в хелпе, либо в техноте какой-нить. Но пока, кроме косвенных упоминаний, ничего не нашел...:-( Покажу логи с дебагом, мож, поверят...
     
  13. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    в истории репликации должно быть указано сколько доков было удалено
     
  14. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Дык в логах репликации есть сведения об удалении - но нет описания причины, по которой док-ты удалялись (если дебаг не включить). Итог - начальство делает вывод, что "документы пропали"... ;)
     
  15. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    ну ты как админ должна всего лишь рапортовать, что вот вам логи что доки были удалены, а причины к админам

    иначе так можно опуститься до выявления какая конкретно строчка кода явилась причиной удаления, а этом уже за рамки админства выходит

    проще сказать, кто-то что-то напортачил и доки были удалены
    - почему удалены
    - не знаю, разработчики не создали механизма логирования удаления и обьяснения причин

    как то так ;)
     
  16. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    У нас в косяках разрабов, в основном, виноват админ, так уж сложилось :)
    А если копнуть глобальнее, вся проблема сводится к старинной недоработке индусов - нельзя быстро и легко посмотреть, по какой причине и кем был удален док-т... Я знаю, что в новых версиях в User Activity добавили некоторую информацию, но, все равно, полной прозрачности нет...
     
  17. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    Индусы то как виноваты?
    тут свой обработчик всё прекрасно решает и лог можно создать и указать кто нажал и из какого вида и т.д.

    а так получается в стандартном обработчике удаления выводить диалог: а какова причина удаления? ;) и так для каждого дока? ;)
     
  18. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Свой обработчик решает только для пользовательских удалений - а это не мой случай, т.к. док-ты удалила серверная задача. Вот поэтому и индусы...Могу хук, конечно, написать и отслеживать самостоятельно, но причину удаления серверной задачей и он не сможет объяснить. В идеале хочу видеть такие записи в логе:

    Процесс Amgr удалил док-т <UNID> из базы <имя базы> по причине "Выполнение агента <Имя агента> в базе <имя базы>". (Да, для своих агентов я сам логи пишу - а если есть готовая система с закрытым кодом?)
    Процесс Replica удалил док-т <UNID> из базы <имя базы> по причине "Note no longer matches Selective Replication formula"".

    Я думаю, не я один хочу такое... ;)
     
  19. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    ну для агентов такой обработчик тоже не проблема написать с полным логированием ;)
     
  20. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Не понял, как это "Модифицируем док-т на СерверА", если выше и так был установлен СерверА?
     
Загрузка...
Похожие Темы - Удаление Документов Readers
  1. Ruska132
    Ответов:
    19
    Просмотров:
    1.347
  2. orion
    Ответов:
    5
    Просмотров:
    1.331
  3. k85
    Ответов:
    7
    Просмотров:
    1.474
  4. olga13
    Ответов:
    5
    Просмотров:
    7.593
  5. Lesik
    Ответов:
    1
    Просмотров:
    2.005

Поделиться этой страницей