Add support for query timeouts (1.3) #269
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a backport of the PR #247 to
v1.3-ossivalis
stable branch.This change implements
Statement#setQueryTimeout()
method. It is implemented by scheduling a background task and callingStatement#cancel()
when timeout expires.Timeouted statement has the same behaviour as it would be if cancelled manually -
SQLException
is thrown and the statement is closed.Timeout is applied for all
execute*
calls. ForexecuteBatch()
it is applied separately for every single query in a batch.Testing: new test added.
Fixes: #212