cayleygraph / cayleygraph/cayley
Add capacity to stop a running query without bringing down REPL
- Dominant language
- Go
- Stars
- 15.1k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
Currently we intercept `SIGKILL` and `SIGINT` and attempt to terminate the application cleanly when those have been sent.
I would like to be able to catch a SIGINT and send a kill to a running query, without bringing down the entire application. This is complicated by the fact that not all (in fact only one - `gremlin`) of the query languages offer running query termination. The one language that does offer termination only provides that via a timeout set at session start.
What I propose is that all languages add an exported `KillQuery()` method that can be called by the REPL (or other system - killing a long running query in the web interface might be a nice feature). This may possibly then be leveraged into timeouts more generally.
Contributor guide
Assessment
This issue has not been assessed yet.