typedb / typedb-behaviour

TypeDB Behaviour Test Specification
Mozilla Public License 2.0
10 stars 19 forks source link

Add driver test to check multiple failing schema and write transactions and deadlock/timeouts preventions #310

Closed farost closed 3 weeks ago

farost commented 1 month ago

Usage and product changes

We found that there was a deadlock on the TypeDB server side caused by a failing schema query in a schema transaction not closing the transaction, which led to the schema lock being forever active, not allowing other transactions to be opened.

This PR adds a behaviour test to cover this scenario after the server's fix is merged.

It's uncomfortable to cover this scenario in the connection package to run it for the server itself as we have to manually work with transactions in the test code, which doesn't really test this mechanism. This means that we need a higher level of abstraction, where we only send commands through a connection to the server, where our drivers come to help.

typedb-bot commented 1 month ago

PR Review Checklist

Do not edit the content of this comment. The PR reviewer should simply update this comment by ticking each review item below, as they get completed.


Trivial Change

Code

Architecture