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

Системная платформа - продукт для комплексной автоматизации процессов предприятия от Wonderware.

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

Сообщение Bender » Чт июл 08, 2010 1:41 pm

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

P.S. IAS 2.1
Bender
 
Сообщения: 28
Зарегистрирован: Ср янв 21, 2009 8:31 pm

Сообщение Klinkmann_Msk » Чт июл 08, 2010 2:18 pm

To Bender:

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

Попроуйте периодичность срабатывания триггеров увеличить до 5-10 минут.
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение Bender » Пт июл 09, 2010 6:14 am

Перед тем как установить триггер проверяется что он не установлен чтобы гаарнтировать присутсвие "фронта".
Триггер сбрасывается первой строкой скрипта для синхронных скриптов и последней для асинхронных.
Триггеры залипают как на синхронных скриптах так и на асинхронных. В лабораторных условиях воспроизвести не удается. Замеченно уже на объекте. Переодичность проявления эффекта, как я уже отмечал может варьироваться от нескольких дней до нескольких недель.

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

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

P.S. Изначально было замеченно на булевых триггерах, но насколько удалось выяснить причиной тому "особая" обработка изменения булевых атрибутов описанная в справочном руководстве в разделе "Output Functionality"
Bender
 
Сообщения: 28
Зарегистрирован: Ср янв 21, 2009 8:31 pm

Сообщение Klinkmann_Msk » Пт июл 09, 2010 6:58 am

To Bender:

1. Компьютеры, наверняка, многоядерные. Проверьте, не влючена ли в BIOS-е опция Hyper Threading. Должна быть отключена.
2. Вставляйте в скрипты контрольные точки (например, LogMessage()). Может станет понятно, где именно стопорится система.
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение Bender » Пт июл 09, 2010 7:21 am

Используем следующее программное обеспечение:
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

Однако не ясно что пораждает эти системы, поскольку система состоит из нескольких подсистем разрабатываемых разными продрядчиками.
Bender
 
Сообщения: 28
Зарегистрирован: Ср янв 21, 2009 8:31 pm

Сообщение Klinkmann_Msk » Пт июл 09, 2010 7:35 am

To Bender:

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

По логам ошибок - ничего полезного :(
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение Bender » Пт июл 09, 2010 8:07 am

Не подскажиет где найти оффицальное сообщение о том что IAS 2.1 не поддерживает 64-битную архитектуру и к каким последствиям это может приводить?
Bender
 
Сообщения: 28
Зарегистрирован: Ср янв 21, 2009 8:31 pm

Сообщение Klinkmann_Msk » Пт июл 09, 2010 8:57 am

To Bender:

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

"каким последствиям это может приводить?"
С той же страницы (не поместилось на картинке):
Note: Combinations not shown are not supported
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение Bender » Пт июл 09, 2010 9:40 am

а что вкладывается в термин not supported? решение проблем возникающих в таких комбинациях, отсутсвие заданного функционала, или что вообще не должно запускаться? Интересуюсь поскольку платформа была развернута (не нами) и при этом функционирует уже не один год, на ее базе имеются какие-то решения...
Bender
 
Сообщения: 28
Зарегистрирован: Ср янв 21, 2009 8:31 pm

Сообщение Klinkmann_Msk » Пт июл 09, 2010 9:58 am

To Bender:

Not supported - означает, что либо просто не работает (проверялось), либо не проверялось, поэтому попытка работы с такой комбинацией - полностью на свой страх и риск. WW помогать ничем не будет.
Klinkmann_Msk
 
Сообщения: 819
Зарегистрирован: Пт сен 18, 2009 10:12 am

Сообщение DiMa » Вс июл 11, 2010 10:04 am

Попробуйте переменную на запуск скрипта архивировать, может по графикам чего интересного увидите?
DiMa
 
Сообщения: 107
Зарегистрирован: Чт апр 22, 2010 1:16 pm


Вернуться в Wonderware System Platform

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8

cron