vaticle / typedb-driver

TypeDB Drivers for Rust, Python, Java, Node.js, C, C++, and C#.
https://typedb.com
Apache License 2.0
30 stars 32 forks source link

3.0: Ensure queries are interruptible and transaction close cleans up resources #664

Open krishnangovindraj opened 1 week ago

krishnangovindraj commented 1 week ago

Problem to Solve

There is no way to interrupt long-running queries in TypeDB 2.x (apart from closing the session). This allows a few long-running transactions to make the whole server unresponsive. Further, closing transactions (or interrupting queries) did not guarantee that the resources would be freed (or that the work would cease in the background). We want to avoid these problems.

Current Workaround

We try to explicitly free all resources on transaction close. Closing the session also allows us to kill an unresponsive query ( since typedb#7088 )

Proposed Solution

Support a query-interrupt API in rust.

Additional Information

-