Openlog - Ахтунг!

Тема в разделе "Lotus - Программирование", создана пользователем akat, 6 авг 2013.

  1. akat

    akat Lotus team
    Lotus team

    Регистрация:
    16 июн 2010
    Сообщения:
    243
    Симпатии:
    7
    Вообщем пол года "боролись", пытаясь найти причину, казалось бы спонтанных, падений сервера.
    Помог апгрейд сервера на 9-ку. При этом на консоле он стал выдавать:

    [09A8:012D-033C] *** You are using LSI_INFO in LotusScript which is an undocumented feature only used in a controlled environment, and is unsupported
    [09A8:012D-033C] ********************
    [09A8:012D-033C] *** LSI_INFO(14) was found and is known to cause memory corruption, leading to server instability. Please remove all uses of this from your application.
    [09A8:012D-033C] ********************
    [09A8:012D-033C] **************************
    [09A8:012D-033C] *** Agent : DoSubOnServer
    [09A8:012D-033C] *** DB : db\base.nsf
    [09A8:012D-033C] **************************

    Далее, к первоисточнику:
    http://www.openntf.org/internal/home.nsf/d...6257B2F0049805A

    Гуглим еще:
    http://www-10.lotus.com/ldd/nd6forum.nsf/C...0e?OpenDocument
    (проблема вскрылась еще в 2006, в марте...)
    http://www.billbuchan.com/imported-2009111...threadinfo.html

    Что делать?
    Установить NoLSIStackTrace=True в инициализации либы OpenLogFunctions (версии 1.5), и везде, где исползуется либа в ваших базах.

    Минусы: теряем стек вызовов в поле Stack Trace лога. Но не смертельно и лучше чем спонтанные краши!

    Ситуация краша возникает, когда логируется от имени сервера, например серверным агентом. Скорее, когда выполняется интенсивное логирование от имени сервера.
    Если логируется в нотес-клиентах у юзеров, то проблем не возникает.
     
  2. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.051
    Симпатии:
    146
    Угу, есть такое дело: Lsi_info
    и вот по ходу причина: Execute #5
     
  3. akat

    akat Lotus team
    Lotus team

    Регистрация:
    16 июн 2010
    Сообщения:
    243
    Симпатии:
    7
    Пасиб, за наводку)
    1. Странно, но именно под 9-кой краши. На 8.5.х релизах краши тоже были.
    Execute явно не используется. На 100% не уверен, т.к. много чужого кода.

    2. Это всего лишь отключить console logging.
     
  4. Кирилл Шваб

    Кирилл Шваб Well-Known Member

    Регистрация:
    30 июн 2006
    Сообщения:
    143
    Симпатии:
    4
    AlexeyKatyushyn,

    А в nsd вызов LSI_INFO случаем не фигурировал?
     
  5. akat

    akat Lotus team
    Lotus team

    Регистрация:
    16 июн 2010
    Сообщения:
    243
    Симпатии:
    7
    Примерно так:
    LotusScript.1100.AgentDBPath = db1.nsf
    LotusScript.1100.AgentName = SystemShedule
    LotusScript.1100.LSI_INFO_COUNT = 12
    LotusScript.9D0.AgentDBPath = db2.nsf
    LotusScript.9D0.AgentName = SystemShedule
    LotusScript.9D0.LSI_INFO_COUNT = 14
     
Загрузка...
Похожие Темы - Openlog Ахтунг
  1. NickProstoNick
    Ответов:
    8
    Просмотров:
    2.462
  2. ToxaRat
    Ответов:
    17
    Просмотров:
    6.510

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