<div dir="ltr"><div><div><div>Thanks for all the discussion both on list and on irc. After more investigation, it sounds like there are no feature gaps, but we will need to incorporate <a href="https://github.com/rq/rq/issues/684#issuecomment-352152369" target="_blank">this workaround</a> to cancel a task that is already running.<br><br></div>The feedback I've heard on the idea is that it's valuable and looks feasible, but we won't really know until we prototype it a bit. Based on the technical outline in the previous email, I believe it can be prototyped in a day or two. I plan to do this soon, once I contribute to a few other required-for-beta planning items first. I'll post my PR to see what other think of the change, probably next week.<br><br></div></div><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 21, 2018 at 6:41 PM, Daniel Alley <span dir="ltr"><<a href="mailto:dalley@redhat.com" target="_blank">dalley@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I meant in the sense that, what is the aftermath when it comes back online, and is it screwed up in ways that cause side effects.<br></div><div class="m_6384561726356393675m_-47568091346278481HOEnZb"><div class="m_6384561726356393675m_-47568091346278481h5"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 21, 2018 at 5:02 PM, Jeremy Audet <span dir="ltr"><<a href="mailto:jaudet@redhat.com" target="_blank">jaudet@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>> RQ does not support revoking tasks.  If you send the worker a SIGINT, it will finish the task and then stop processing new ones.  If you send the worker SIGKILL, it will stop immediately, but I don't think it gracefully handles this circumstance.<br>
<br>
</span>Nothing handles SIGKILL gracefully. Processes can't catch that signal.<br>
`kill -9 $pid` sends SIGKILL.<br>
<br>
If one is looking for a way to gracefully, immediately kill an RQ<br>
worker, then SIGTERM may do the trick. Anecdotally, many processes<br>
handle this signal in a hurried fashion. Semantically, this is<br>
appropriate: SIGINT is the "terminal interrupt" signal (Ctrl+c sends<br>
SIGINT), whereas SIGTERM is the "termination signal."<br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div></div>