Как исправить перезапуск приложения erlang с помощью upstart?

#erlang #upstart

#erlang #выскочка

Вопрос:

У меня есть приложение erlang (OTP 21), которое запускается как служба upstart. Когда я пытаюсь перезапустить приложение с sudo initctl restart my_service помощью, я получаю сообщение об ошибке:

 Protocol 'inet_tcp': the name my_service@localhost seems to be in use by another Erlang node
  

и приложение не запускается снова.

Основываясь на датах в журналах, я решил, что upstart попытается запустить приложение за несколько миллисекунд до того, как оно фактически остановится. Как я могу это исправить?

Комментарии:

1. Если бы вы предоставили свой сценарий службы upstart, это было бы полезно. Я бы сказал, что вы не убили запущенную виртуальную машину и пытаетесь запустить новую!

2. Пожалуйста, укажите конфигурацию задания upstart. Некоторые конфигурации более подвержены подобным ошибкам.