УкраїнськаEnglishmRussian
Вхід/Новий
У темі немає нових постів

[BugFixed] Падение при отсутвии устройства транспорта последовательного интерфейса


Автор Повідомлення
Повідомлення створено: 24. 09. 2012 [17:03]
aleax
Alexey Bondarchuk
Автор теми
Зареєстрован(а) с: 27.01.2010
Повідомлення: 73
Версия: openscada 8.0.0.3 svn 1919, tag_0.8
Система: Debian GNU/Linux 6.0.5 (squeeze), Архитектура amd64.

В проекте сконфигурирован выходной транспорт последовательного интерфейса с адресом /dev/ttyUSB0 (конвертер на FTDI), и 7 контролеров ModBus, каждый с одним параметром, который обрабатывается шаблоном.

Если запускать скаду с уже подключенным конвертером, то в 10 из 10 попыток успешны. (в не зависимости отвечают ли slave устройства по указанным адресам).

Если запускать с отключенным конвертером, то в 8 из 10 запусков скада падает нас старте. 1 раз корректно запустилась но упала при завершении работы, и 1 раз нормально запустила и остановила проект.

Прилагаю дампы.
Вкладений файл

crash.tar.gz (Тип файлу: application/gzip, Розмір: 28.63 кілобайтів) — 1501 завантажень
Повідомлення створено: 24. 09. 2012 [18:11]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
"aleax" wrote:

Если запускать с отключенным конвертером, то в 8 из 10 запусков скада падает нас старте. 1 раз корректно запустилась но упала при завершении работы, и 1 раз нормально запустила и остановила проект.

Сколько у Вас там потоков долбит один транспорт?
r1921: Расширил ресурс на всю функцию start() исходящего транспорта "Serial".
Проверяйте!

Learn, learn and learn better than work, work and work.
Повідомлення створено: 25. 09. 2012 [11:56]
aleax
Alexey Bondarchuk
Автор теми
Зареєстрован(а) с: 27.01.2010
Повідомлення: 73
"roman" wrote:

Сколько у Вас там потоков долбит один транспорт?
r1921: Расширил ресурс на всю функцию start() исходящего транспорта "Serial".
Проверяйте!

Гдэ-то так сэм, восэм ©

Больше 32х слейв устройств на одну линию подключать не собираемся.

Спасибо за исправление — все работает.

Заодно предлагаю 2 улучшения в систему сборки под дебиан.

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

JAVASCRIPT
Index: debian/rules
===================================================================
--- debian/rules	(revision 1923)
+++ debian/rules	(working copy)
@@ -61,7 +61,7 @@
 install-indep:
 	dh_testdir
 	dh_testroot
-	dh_clean -k -i
+	dh_prep
 	dh_installdirs -i
 
 	dh_install -i
@@ -72,7 +72,7 @@
 install-arch:
 	dh_testdir
 	dh_testroot
-	dh_clean -k -s
+	dh_prep
 	dh_installdirs -s
 
 	$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install


И добавить сборку openscada-dbg пакета:
JAVASCRIPT
Index: debian/control
===================================================================
--- debian/control	(revision 1923)
+++ debian/control	(working copy)
@@ -12,6 +12,12 @@
 Description: OpenSCADA system project
  Open SCADA system. For access use account "root" and password "openscada".
 
+Package: openscada-dbg
+Architecture: any
+Depends: openscada (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
+Description: Debug symbols for OpenSCADA
+ Debug symbols to provide extra debug info in case of crash.
+
 Package: openscada-doc.en
 Architecture: all
 Description: OpenSCADA documents (EN).
Index: debian/rules
===================================================================
--- debian/rules	(revision 1923)
+++ debian/rules	(working copy)
@@ -99,7 +99,7 @@
 #	dh_installinfo
 #	dh_installman
 	dh_link
-	dh_strip
+	dh_strip --dbg-package=openscada-dbg
 #	dh_compress
 	dh_fixperms
 #	dh_perl
Повідомлення створено: 26. 09. 2012 [10:16]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
"aleax" wrote:

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

Использование "dh_prep" принять не могу, поскольку он отсутствует в ряде старых и не очень Debian-окружений, для которых я собираю OpenSCADA. К тому-же у меня нет проблем с "dh_clean".

"aleax" wrote:

И добавить сборку openscada-dbg пакета:

Это добавлю.

Learn, learn and learn better than work, work and work.



8400