-
Notifications
You must be signed in to change notification settings - Fork 845
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
Fix Augur process control commands #904
Conversation
…ses to send SIGKILL after waiting 15 seconds and checking what is still running again." This reverts commit 7826039.
Signed-off-by: Carter Landis <c@carterlandis.com>
Signed-off-by: Carter Landis <c@carterlandis.com>
fb392c9
to
379f31d
Compare
@ccarterlandis : I did that. As long as we are using SIGKILL instead of SIGTERM, the change is fine. I assumed you switched from SIGKILL for a reason, so I let it try that first, wait a short time, then do SIGKILL … SIGTERM was not and does not kill all of the augur processes for some reason. |
@ccarterlandis : SIGTERM was CONSISTENTLY not working on ALL OF THE SERVERS … we either need the pause OR we need to use SIGKILL ... basically, until I made the change, |
We were never using |
@ccarterlandis : OK. I get it now. As long as there's a way to trigger SIGKILL, which there is, I'm good with this. THANK YOU!!! |
At somepoint in the summer, a patch was introduced that introduced a 15 second wait time to the
augur util kill
command that occured after the first attempt to gracefully stop the process withSIGTERM
, after which it would attempt to kill all the process withSIGKILL
. While this fallback makes sense, it in inadvertently introduced this artifical 15 second wait time to the startup of the main server. This was due to poor design during the initial implementation, which copied code blocks that should have been refactored. The 15 second delay was added to both of these code blocks, one of which was used inaugur run
, thus causing the slowdown.This was fixed by refactoring out the copied code blocks to a singular underlying method call, removing the 15 second wait altogether, and exposing a new command as well changing the meaning of an existing one.
The
augur util stop
command was added, which will attempt to gracefully terminate any existing Augur process. This was howaugur util kill
previously behaved;augur util kill
will now send aSIGKILL
signal instead of aSIGTERM
, in order to forcefully halt the execution of the process. This should only be used when Augur has crashed hard, and is not responding to attempts to useaugur util stop
.There is further refactoring to be done, but this is better than where it was before!