Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supervisord does not kill old Tango and TangoManager processes on restart #128

Open
dnivra opened this issue Nov 17, 2016 · 0 comments
Open

Comments

@dnivra
Copy link

dnivra commented Nov 17, 2016

Expected Behavior

On restarting the Tango processes using supervisorctl, I noticed that the Tango server and manager do not exit. supervisorctl however starts new server and manager processes which don't function correctly since the old ones are running.

Actual Behavior

supervisorctl should first kill the Tango server and manager processes before starting new processes.

Steps to Reproduce the Behavior

Run supervisorctl restart all.

Possible reason and fix

In the supervisord configuration, Tango is invoked by /bin/sh and since the terminate signal doesn't propagate to child processes by default, the server and manager continue to run while only the original /bin/sh is killed.

There are two possible fixes I can think of:

  1. Invoke the server and manager directly rather than via /bin/sh. I tested this and it seems to work fine.
  2. Use the stopasgroup or killasgroup directives of supervisor to propagate the kill command to all children. I haven't tested these.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant