#110 closed баг (сделано)
Падает smarthdcd
Сообщил: | san | Владелец: | alx |
---|---|---|---|
Приоритет: | средний | Этап разработки: | 1-я очередь |
Ключевые слова: | Копия: | Art_M, andrei |
Описание
25 Октября в 14-13 (пермск.) Артём через панель оператора изменял значения некоторых настроек в блоке.
Внезапно контроллер перестал отвечать на нажатия кнопок и переключателя, и индикаторы перестали менять своё состояние.
Алексей, подключившись к контроллеру удалённо сообщил что smarhdcd отсутствует в списке запущенных процессов.
В тот-же день наблюдались ещё два подобных случая:
~11-23(пермск.) Артёма открыл страничку состояния сети, и наблюдал за уровнем сигнала, затем заметил что данные перестали обновляться и контроллер не отвечает на нажатия кнопок.
20-43(пермск.) Вечером Артём ушел ~в 18 и оставил контроллер включенным, ЧРП отключил. Утром следующего дня было обнаружено что smarthdcd упал.
r602
Логи происшествий есть у Алексея.
Т.к. последствия отсутствия smarthdcd достаточно серьёзные, Артём предложил #106 в качестве обходного пути.
История изменений (3)
comment:2 by , 6 лет ago
Одна из станций при падении отложила корку. Вот бэктрейс:
#0 0xb6c53dcc in X509_VERIFY_PARAM_inherit () from /home/alx/work/SmartDevice/poky/build/tmp/work/cortexa5hf-vfp-poky-linux-gnueabi/smarthdc/1.0-r609/recipe-sysroot/usr/lib/libcrypto.so.1.0.2 #1 0xb6b39d18 in SSL_new () from /home/alx/work/SmartDevice/poky/build/tmp/work/cortexa5hf-vfp-poky-linux-gnueabi/smarthdc/1.0-r609/recipe-sysroot/usr/lib/libssl.so.1.0.2 #2 0x0006bb90 in Http2Session::Http2Session (this=0x4197a8, ctx=<optimized out>, sockfd=22, addr=0xbec83528, addrlen=28, mh=0x417fe0) at /usr/src/debug/smarthdc/1.0-r609/trunk/http_server.cpp:1050 #3 0x0006bddc in HTTP::io_callback (this=0x40a730, events=<optimized out>) at /usr/src/debug/smarthdc/1.0-r609/trunk/http_server.cpp:1778 #4 0x00024a88 in EPoller::wait (ms=ms@entry=0) at /usr/src/debug/smarthdc/1.0-r609/trunk/epoller.cpp:48 #5 0x00017acc in main () at /usr/src/debug/smarthdc/1.0-r609/trunk/smarthdcd.cpp:180
Падение произошло в libssl при вызове SSL_new() при подключении на HTTPS порт (443). Предположительная причина: при старте сервера контекст SSL был создан, но из-за отсутствия сертификата не смог быть инициализирован, и был удален, но указатель на него остался. При входящем соединении в SSL_new() передался указатель на "мусор".
Да, уточню, во всех трёх случаях станция находилась в режиме "Стоп".