Opened 9 months ago

Closed 9 months ago

#419 closed улучшение (invalid)

R485 - вечный Error если порт занят

Reported by: san Owned by: alx
Priority: низкий Milestone: 1 очередь
Component: VE-02 Keywords:
Cc:

Description

Если попытаться в окончании R485 создать сервер на уже занятом порту(другое окончание уже находится на этом порту в режиме Сервер и состоянии Listen), то окончание перейдёт в состояние Error "навечно". Если в дальнейшем порт освободить, то окончание больше не делает попыток его занять. Для пользователя это может выглядеть непонятно - конфигурация платы корректная, но окончание не будет работать, пока его не "перезапустить".
Предлагаю в таком случае или делать повторные попытки занять порт или как-то просигнализировать пользователю что этот "Error" навечно (например добавить ещё одно "ошибочное" состояние "Порт занят").
Всё сказанное наверное распространяется и на R422 и R232.

Change History (3)

in reply to:  description comment:1 by alx, 9 months ago

Resolution: готово
Status: newclosed

Replying to san:

Предлагаю в таком случае или делать повторные попытки занять порт или как-то просигнализировать пользователю что этот "Error" навечно (например добавить ещё одно "ошибочное" состояние "Порт занят").

Предлагаемая сигнализация пользователю уже есть. При завершении ошибкой любого из системных вызовов, выполняемых при переходе в состояние listening, в лог выводится соответствующее сообщение, например "module 2: cannot bind server_socket: address already in use". Или "module 1: cannot listen server_socket: labuda dabuda bla-bla-bla"...

comment:2 by alx, 9 months ago

Resolution: готово
Status: closedreopened

По ошибке закрыл тикет не с той резолюцией.

comment:3 by alx, 9 months ago

Resolution: invalid
Status: reopenedclosed
Note: See TracTickets for help on using tickets.