Страница 1 из 1

"Залипают" триггеры

СообщениеДобавлено: Чт июл 08, 2010 1:41 pm
Bender
В общем ситуация такая: имеются скрипты срабатывающие на определенное значение атрибута, тип триггера - OnTrue, скрипты по содержимому есть как "легкие" (проверить условие и установить атрибут), так и "тяжелые" (запросы к БД). Скрипты запускаються с переодичностью минута - две. Атрибуты по котрым срабатывает триггер целочисленные. Первой строчкой скрипта осуществляется сброс значения управляющего триггера.
Возникает следующий эффект: время от времени, без какой-либо закономерности (от нескольких недель до нескольких дней), происходит "залипание" триггера, т.е. триггер устанавливается в необходимое значение, по которому должен выполниться скрипт, и так в этом значении и остается, хотя, как я отметил выше, он должен был "сброситься".
Может кто-нибудь сталкивался с подобным? Почему это происходит? И как с этим бороться?

P.S. IAS 2.1

СообщениеДобавлено: Чт июл 08, 2010 2:18 pm
Klinkmann_Msk
To Bender:

В качестве предположения.
1. Триггер сбрасывается, запускается скрипт с обращением к БД
2. Проходит 1 минута, срабатывает триггер
3. По триггеру пытается запуститься выполняющийся всё ещё скрипт
4. Этого не получается - триггер не сбрасывается.

Попроуйте периодичность срабатывания триггеров увеличить до 5-10 минут.

СообщениеДобавлено: Пт июл 09, 2010 6:14 am
Bender
Перед тем как установить триггер проверяется что он не установлен чтобы гаарнтировать присутсвие "фронта".
Триггер сбрасывается первой строкой скрипта для синхронных скриптов и последней для асинхронных.
Триггеры залипают как на синхронных скриптах так и на асинхронных. В лабораторных условиях воспроизвести не удается. Замеченно уже на объекте. Переодичность проявления эффекта, как я уже отмечал может варьироваться от нескольких дней до нескольких недель.

Как варианты:
1. по каким-то причинам скрипт не может отследить что сформирован "фронт" и не выполняется.
2. по каким-то причинам устанавливаемое значение для триггера в скрипте (сбрасывание) не фиксируется.

Насколько правомерны такие предпопложения? Каковы могут быть причины?

P.S. Изначально было замеченно на булевых триггерах, но насколько удалось выяснить причиной тому "особая" обработка изменения булевых атрибутов описанная в справочном руководстве в разделе "Output Functionality"

СообщениеДобавлено: Пт июл 09, 2010 6:58 am
Klinkmann_Msk
To Bender:

1. Компьютеры, наверняка, многоядерные. Проверьте, не влючена ли в BIOS-е опция Hyper Threading. Должна быть отключена.
2. Вставляйте в скрипты контрольные точки (например, LogMessage()). Может станет понятно, где именно стопорится система.

СообщениеДобавлено: Пт июл 09, 2010 7:21 am
Bender
Используем следующее программное обеспечение:
Wonderware IAS 2.1 Patch 2
Microsoft Windows Server 2003 R2 Standart Edition x64 Edition Service Pack 2

Аппаратная конфигурация:
Intel(R) Xeon(TM) CPU 3.00 GHz, 2.99 GHz, 7,99 GB of RAM

LogMessage используем, перед залипанием видим, что предыдущий раз скрипт отработал нормально (об этом свидетельствует сообщение по факту окончания выполнения скрипта) далее, в результате залипания, информация о запуске скрипта (сообщение о начале выполнения) отсутсвует.

Кстати, в LogMessage переодически появляються сообщения:
Unknown error 0xC0000005 (c0000005) raised at line 985 in MxConnection.cpp (in U:\MagellanDev\src\EngineServices\Lmx\).

Unknown error 0xC0000005 (c0000005) caught at line 509 in NmxSupport.cpp (in U:\MagellanDev\src\EngineServices\Lmx\).

COM Error = 0xc0000005 LINE 1288 FILE U:\MagellanDev\src\EngineServices\Scheduler\SchedulerImpl.cpp

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

СообщениеДобавлено: Пт июл 09, 2010 7:35 am
Klinkmann_Msk
To Bender:

Упс...
А ведь IAS 2.1 не совместим с 64-битными ОС.
По логам ошибок - позже.

По логам ошибок - ничего полезного :(

СообщениеДобавлено: Пт июл 09, 2010 8:07 am
Bender
Не подскажиет где найти оффицальное сообщение о том что IAS 2.1 не поддерживает 64-битную архитектуру и к каким последствиям это может приводить?

СообщениеДобавлено: Пт июл 09, 2010 8:57 am
Klinkmann_Msk
To Bender:

http://files.mail.ru/8K3DW7

"каким последствиям это может приводить?"
С той же страницы (не поместилось на картинке):
Note: Combinations not shown are not supported

СообщениеДобавлено: Пт июл 09, 2010 9:40 am
Bender
а что вкладывается в термин not supported? решение проблем возникающих в таких комбинациях, отсутсвие заданного функционала, или что вообще не должно запускаться? Интересуюсь поскольку платформа была развернута (не нами) и при этом функционирует уже не один год, на ее базе имеются какие-то решения...

СообщениеДобавлено: Пт июл 09, 2010 9:58 am
Klinkmann_Msk
To Bender:

Not supported - означает, что либо просто не работает (проверялось), либо не проверялось, поэтому попытка работы с такой комбинацией - полностью на свой страх и риск. WW помогать ничем не будет.

СообщениеДобавлено: Вс июл 11, 2010 10:04 am
DiMa
Попробуйте переменную на запуск скрипта архивировать, может по графикам чего интересного увидите?